I’m not 100% certain that’s the cause, but my testing so far suggests it’s probably that. Basically if you have a URL that doesn’t point to the original resource, but some copy of it on another instance, it won’t resolve. So far I’ve only tested that on a third instance, but from my experience with the same bug on pleroma, this will occur even if you do it on the resource’s origin instance. (fse post referred to from poa.st can’t be resolved on fse.) As example: https://lemmy.perthchat.org/api/v3/resolve_object?q=https://lemmy.ml/post/472799. It’s possible that this is actually just a federation block, but https://beehaw.org/post/125367/comment/32382 also fails, (and fetching that post works,) which I’m pretty sure isn’t.

If you are writing a client, there is really no reason to browse instances using browser/lemmy-ui. Instead you can directly connect with your client to the api of any instance. Then when you want to interact with any object (eg vote, write a post, subscribe), you take the value of ap_id field (on post, comment) or actor_id field (user, community, site), and pass that to resolve_object.

What resolve_object does is essentially the command below, and then transform the data to store it in Lemmy db. Note that each fetchable object has an id, and that is where you can resolve it.

curl -H 'Accept: application/activity+json' https://lemmy.ml/post/472799 | jq

https://lemmy.perthchat.org/api/v3/resolve_object?q=https://lemmy.ml/post/472799

This fails because it was posted on lemmygrad.ml, which is blocked on perthchat.

To fetch comments, the url should look like this: https://sopuli.xyz/comment/104283

@zergling_man
creator
link
fedilink
23M

Oh, title got munched, heh. I’ll fix that… So basically you’re saying that before resolve_object I should transform it on given instance and load from there, pull ap_id from it and then resolve on that. How annoying, now I have to figure out if I can easily and reliably transform any valid lemmy URL to an API link. Probably yes, regex something like https://[a-zA-Z0-9\.\-\_]+/(.*/?)\w+/\d+ and replace the capture with api/v3. So much for simplicity.

That sounds overly complicated. Why do you open Lemmy in your browser, when you can directly connect with your client to the API of any instance?

And if you do use the browser, theres the fedilink icon which has the link you need. If that isnt rendered properly in your browser, send me the details and i can open an issue for you.

@zergling_man
creator
link
fedilink
23M

Why do you open Lemmy in your browser I don’t.

you can directly connect with your client to the API of any instance The complexity is necessary for this. When given a link, I need to translate it into an API link so I can load the object and grab the ap_id.

If that isnt rendered properly in your browser Lynx. I’ve detailed the problem in the matrix room, basically for some reason it’s in a title element so lynx correctly sets the page title to “fedilink” 100 times.

@zergling_man
creator
link
fedilink
12M

Thinking about this more, I realised it’s impossible: The link might not even be a lemmy link at all! How am I meant to guess the other node’s API? I’d use federation API, I guess, which I still haven’t found nice docs for.

You are wrong, it uses the title attribute which is valid html, and not the title element. Maybe Lynx doesnt support that attribute on a elements, I dont know.

Btw you need to add a newline after each quote so that its rendered correctly as markdown.

@zergling_man
creator
link
fedilink
12M

yun-wuxin:[wisknort]:~$ curl https://beehaw.org/post/125367/comment/32382 -s | grep -Eo ‘.{10}fedilink.{10}’ id=“icon-fedilink” viewBox= ef=“#icon-fedilink”></use><d y"><title>fedilink</title></

Do you mean a blank line? Because I added newlines. Frankly I consider this to be markdown’s fault, because the behaviour is, put simply, retarded. If I want to quote two lines, I will quote two lines. (Worse is the part where a single newline is ignored, but two newlines is two newlines. I just want one newline, thanks.)

Hmm i was inspecting the HTML in Firefox, but if i curl the source and look at it directly, it looks quite different, with a <title> element in the <body> as you say. @dessalines@lemmy.ml can you look into this?

Dessalines
mod
link
fedilink
12M

@zergling_man@lemmy.perthchat.org open up an issue on the github because its not clear to me what you’re trying to do.

He browses lemmy-ui in Lynx, and it doesnt render the fedilink icon correctly because of that invalid <title> tag. Also doesnt use github.

Dessalines
mod
link
fedilink
12M

The title tag is correct, its for screen reader support for icons.

@zergling_man
creator
link
fedilink
12M

citation needed

@zergling_man
creator
link
fedilink
12M

Pretty much all the comments there are pointing out that it’s not a good idea.

Support / questions about Lemmy.

  • 0 users online
  • 1 user / day
  • 1 user / week
  • 12 users / month
  • 113 users / 6 months
  • 3 subscribers
  • 106 Posts
  • 521 Comments
  • Modlog