@django I see this in my logs:
{"@context":["https://www.w3.org/ns/activitystreams",{"FeatureRequest":"https://w3id.org/fep/7aa9#FeatureRequest","QuoteRequest":"toot:QuoteRequest","blurhash":"toot:blurhash","toot":"http://joinmastodon.org/ns#"}],"actor":"https://mediaformat.org/author/dev/","cc":["https://mediaformat.org/wp-json/activitypub/1.0/actors/2/followers"],"id":"https://mediaformat.org/?post_type=ap_outbox&p=10998","mediaType":"text/html","object":"https://cosocial.ca/users/evan/statuses/116817212125348410","published":"2026-06-27T01:59:31.432Z","tag":[],"to":["https://www.w3.org/ns/activitystreams#Public",null],"type":"Like"}The value of to property is not valid (contains null):
"to":["https://www.w3.org/ns/activitystreams#Public",null],Thanks!
Tried to follow a private community, and I have a problem with this Accept activity:
{"@context":["https://join-lemmy.org/context.json","https://www.w3.org/ns/activitystreams"],"actor":"https://voyager.lemmy.ml/c/privfedtest","id":"https://voyager.lemmy.ml/activities/accept/6a08b817-9dc2-498a-a637-9092c8ea15fc","object":{"actor":"https://mitra.social/users/silverpill","id":"https://voyager.lemmy.ml/activities/follow/3c08aca5-9e41-4d15-b134-326c4bd91bd0","object":"https://voyager.lemmy.ml/c/privfedtest","to":["https://voyager.lemmy.ml/c/privfedtest"],"type":"Follow"},"to":["https://mitra.social/users/silverpill"],"type":"Accept"}The id inside Accept.object is not the ID of my Follow activity, it's something different. Its origin is not my server:
https://voyager.lemmy.ml/activities/follow/3c08aca5-9e41-4d15-b134-326c4bd91bd0@julian @i According to RFC-9110: HTTP Semantics, this is a valid value for content type:
aPPlicAtiOn/lD+jSOn;Charset=utf-8; Profile="https://www.w3.org/ns/activitystreams"@ex @lina @mint В логах однако есть
May 04 13:31:01 houraisan.eientei.org mix[5666]: 13:31:01.485 [error] Could not parse featured collection %{"@context" => ["https://www.w3.org/ns/activitystreams", "https://w3id.org/security/v1", "https://w3id.org/security/data-integrity/v2", %{"Emoji" => "toot:Emoji", "Hashtag" => "as:Hashtag", "sensitive" => "as:sensitive", "toot" => "http://joinmastodon.org/ns#"}], "first" => "https://unseen.name/users/ex/collections/featured?page=true", "id" => "https://unseen.name/users/ex/collections/featured", "type" => "OrderedCollection"} May 04 15:12:00 houraisan.eientei.org mix[5666]: 15:12:00.037 [error] Publisher failed to inbox https://unseen.name/users/ex/inbox {:error, :checkout_timeout}но в очередях уже ничего нет
select count(*) from oban_jobs where queue = 'federator_incoming' and args::text like '%unseen.name%' ; count ------- 0 (1 row)@silverpill @frost I don't know, because it seems that biting uses linked data, and the software that implements it originally came from iceshrimp.net. I reckon testing would require using an iceshrimp.net instance to confirm whether it works properly.
This is the namespace: https://ns.mia.jetzt/as/
{ "Bite": "https://ns.mia.jetzt/as#Bite" }
This context is important because if biting activities don't include it, iceshrimp.net will ignore the activity. I discovered this while trying to repair biting on my Pleroma instance.
https://github.com/mkljczk/pl/pull/11
activities json (from wafrn)
{ "@context": [ "https://www.w3.org/ns/activitystreams", { "Bite": "https://ns.mia.jetzt/as#Bite" } ], "actor": "https://wafrn.lonewolf.zone/fediverse/blog/caohuak", "id": "https://wafrn.lonewolf.zone/fediverse/bites/a6310fce-0567-4df0-971b-853399687349/1d335590-8b2c-4585-b77c-6f5f483dfc7b", "object": "https://moon.lonewolf.zone/users/caohuak", "target": "https://moon.lonewolf.zone/users/caohuak", "to": [ "https://moon.lonewolf.zone/users/caohuak" ], "type": "Bite" }@Profpatsch A lot of effort is being put into reducing implementation complexity - it is just not very visible. Libraries, testing tools, documentation (such as the guide that I mentioned during our previous conversation).
However, the complexity is unavoidable in a decentralized network. A standardized representation of a quote (FEP-e232) was proposed long time ago. It was easy to implement, versatile (FEP-e232 could be used to build any kind of link, not just a quote), and it was supported by a significant number of fediverse projects. Then Mastodon developers decided to invent a different kind of quote, with all the unnecessary complexity that you described. But I'd rather deal with this complexity than have some centralized standards org telling me what to do.
Another issue is disinformation -- and that is really weird, and unique to Fediverse. You probably heard that JSON-LD is required, but that is not true. The spec doesn't require it. Only a few Fediverse projects actually use JSON-LD, and as a developer you don't need to worry about it -- adding "@context": "https://www.w3.org/ns/activitystreams" to your JSON makes your software compatible with >99% of Fediverse instances, and even that is necessary because Mastodon has a bug. Unlike the problem of competing standards, this problem can be solved by writing better documentation.
GNU social JP is a social network, courtesy of GNU social JP管理人. It runs on GNU social, version 2.0.2-dev, available under the GNU Affero General Public License.
All GNU social JP content and data are available under the Creative Commons Attribution 3.0 license.