Mostly just used for moderation.

Main account is https://piefed.social/u/andrew_s

  • 21 Posts
  • 22 Comments
Joined 11 months ago
cake
Cake day: July 24th, 2023

help-circle








  • Firstly, sorry for any potential derailment. This is a comment about the Markdown used in your post (I wouldn’t normally mention it, but consider it fair game since this is a ‘Fediverse’ community).
    The spec for lemmy’s spoiler format is colon-colon-colon-space-spoiler. If you miss out the space, then whilst other Lemmy instances can reconstitute the Markdown to see this post as intended, Lemmy itself doesn’t generate the correct HTML when sending it out over ActivityPub. This means that other Fediverse apps that just look at the HTML (e.g. Mastodon, KBIN) can’t render it properly.
    Screenshot from kbin:

    Also, if you add a horizontal rule without a blank line above it, Markdown generally interprets this as meaning that you want the text above it to be a heading. So anything that doesn’t have the full force of Lemmy’s Markdown processor that is currently trying to re-make the HTML from Markdown now has to deal with the ending triple colons having ‘h2’ tags around it.
    Screenshot from piefed:

    (apologies again for being off-topic)



  • Lemmy let’s you un-delete anything you’ve deleted, so nothing really gets nuked (it seems to be the way these things work anyway, that it’s just a ‘deleted’ flag that’s flipped between true and false).

    On the one hand, it’s a Lemmy problem - I can see you’re comment using the API:

    curl --request GET \
         --url 'https://lemmy.world/api/v3/comment?id=8986376' \
         --header 'accept: application/json'
    
    =>
    {
      "comment_view": {
        "comment": {
          "id": 8986376,
          "creator_id": 399371,
          "post_id": 13748490,
          "content": "See what i mean? I deleted this!",
          "removed": false,
          "published": "2024-03-31T09:48:22.897008Z",
          "deleted": true,
          "ap_id": "https://lemmy.world/comment/8986376",
          "local": true,
          "path": "0.8986376",
          "distinguished": false,
          "language_id": 37
         ...
    

    But there’s also a bug with Sync in that it’s not checking the flag if someone try to reply.




  • Hi

    Pls check how much traffic you’re now sending out for every activity - my server is recording that everything from lemmy.world is being 4 times (e.g. 1 Upvote is sent 4 times to every instance that has a subscriber. Those instances will reject 3 of them for being dupes, but it’s still a lot to be sending out).

    lemmy.ca had a problem where they were sending everything 3 times, and it was because they were running 3 containers, and they all had the same index number, so maybe it’s that.

    Thanks.









  • I know for sure that Lemmy won’t, it’s likely the same for Mastodon.

    I was wrong about not being able to WebFinger your account - I still had the @ at the beginning when I trying. Doing it properly:

    curl --header 'accept: application/json' https://mostr.pub/.well-known/webfinger?resource=acct:910af9070dfd6beee63f0d4aaac354b5da164d6bb23c9c876cdf524c7204e66d@mostr.pub | jq .
    

    gets the right response.

    However, I’m logged into lemmy.world and it still couldn’t get your account. At a guess, it’s because there’s a 20 character limit on usernames.


  • Lemmy instances won’t search outside of their own databases if you’re not logged in.

    But if you are, what it does can be recreated on a command-line by doing:
    curl --header 'accept: application/json' https://nerdica.net/.well-known/webfinger?resource=acct:nate0@nerdica.net | jq .

    This shows that your profile is at https://nerdica.net/profile/nate0. Lemmy puts all users at a /u/, but using webfinger means that other fediverse accounts don’t have to follow the same structure. For lemmy.world, you’re at https://lemmy.world/u/nate0@nerdica.net in the same way that a mastodon user is at e.g https://lemmy.world/u/MrLovenstein@mastodon.social.

    edit: However if you webfinger your mostr.pub account, you get: {"error":"Invalid host"} so any ActivityPub instances will only ever be able to find you if you’ve interacted with them in some way to get a database entry. Edit: also, I tried to do this again, thought I’d try the npub1 account as well, but got Gateway Timeouts, so there’s a bit of jankiness going on too.


  • We’re stuck with the HTML formatting that lemmy provides us, unfortunately. It’s not just about an image vs. text though - it’s also about being from the original author. OP for this post is getting plenty of replies, but I’ve no idea if it’s an issue they care about, or just something they saw and found passingly amusing.

    As for sending on, a screenshot to friends on non-ActivityPub platforms is more reasonable (although being text means you could just copy/paste it, and then include any friends with vision impairments too).

    But yeah, there’s lots of pro’s to a screenshot that I don’t have an argument against (I posted in this thread, but it’s not like I’m going to show up everytime someone yoinks something from Mastodon)


  • lemmy.world has the community, and is keeping up to date with it, because someone (me, actually) brought it through and subscribed.

    midwest.social has the community, but won’t get further updates because no-one subscribed (so technically I don’t have the inbox address for it - it’ll be the same format as everyone else of course, but it would reject updates with the ‘community has no subscribers’ error if I sent stuff to it anyway).

    justworks was in the same situation as midwest.social, but it has a subscriber now, so now it has everything and will keep up to date. I didn’t have to do anything - the new subscriber’s action re-fetched the outbox (discussed below) and luckily that contained everything that was missing. The post from infosec.exchange is there too, so that wasn’t affected by federation blocks.

    lemmon.website isn’t running lemmy - the tails community is ‘virtual’ in that it’s just a bunch of static files pretending to be a real community. The main address 403s 'cos thats just a folder.

    infosec.pub doesn’t have the community most likely because no-one who is logged in there has searched for it (instances won’t search outside their own database if the query isn’t from a logged-in user). lemmon.website is in their /instances list though, so there’s no blocking.

    1. An outbox on lemmy contains the last 20 or so original Announces that the main community uses to tell the communities on other instances about a new post. To illustrate:
      curl --header 'accept: application/json' https://lemmy.world/c/microblogmemes/outbox | jq .orderedItems[0] would be for the most recent post on microblogmemes. (Op’s post is at orderedItems[6]).
      Fetching this allows a new instance to re-create recent posts, as if it had received them at the time.

    2. Someone clicked !tails@lemmon.website, but didn’t go further (they probably got lemmy’s misleading error screen and gave up). As with midwest.social - no subscribers = no more updates.

    3. Yeah, lemmon.website is mine. Not running lemmy means I fudge things a bit (including having posts from Mastodon users, of course)


  • Hmmm, that’s not defederation though. The community’s outbox has the 20 most recent posts in, and that cat gif is currently at number 20. The only way those earlier posts can be there are if someone brought though the community a day or so ago and then didn’t subscribe. If anyone ever does subscribe, I can manually send the rest (and can see if the infosec one fails)










  • I’m not no, just the cheapest VPS I could find.

    The requests never reach my backend, 'cos they’re blocked by nginx rather than it reverse-proxying them like it does for the traffic I’m interested in. So, thankfully for my poorly-programmed backend, it doesn’t have to process the deluge from lemmy.ml. It’s a bit of blunt instrument though, 'cos it just blocks everything. In the future, there’s likely to be some quieter communities on lemmy.ml I’d like, but right now, I can’t follow them without also getting everything from ‘memes’ and ‘asklemmy’.

    I’m also thinking about how lemmy seems to get behind on it’s federation activities, and it would maybe help if they didn’t generate them in the first place for recipients who don’t want them.

    I’m essentially asking someone to stop coming to my house and knocking on my door. I could ignore the knocks, or put a sign up, or employ someone to stand in my garden and stop them. These are strategies to cope with the problem, but I think the real solution would be if they just stopped coming.


  • I’m not sure they are supported.

    Firstly, I should clarify that lemmon.website is mine, and I’m the only user that’s ever been on there.

    When I was running Mastodon, I noticed that, after I’d unsubscribed to the lemmy.ml communities, there was still entries for incoming activities in the systemd journal. Before I stopped running Mastodon, I unsubscribed from all lemmy.world communities. After I started up a new, basic server using Rust’s hyper library, I saw that all activity from both lemmy.ml and lemmy.world was still POSTing to /inbox

    I think what happens is that, when a Mastodon user unsubscribes, the software longer views the community’s public key as valid, so it doesn’t show the posts, etc, but you haven’t ‘really’ unsubscribed because lemmy has errored. Here’s how I’ve tested this.

    1. Start a brand new lemmy instance, on a linux VM in Windows, using ngrok to tunnel though from a ephemeral URL. So, right now, there’s lemmy service you can see running using:
      curl --header 'accept: application/activity+json' https://f2d0-77-100-144-83.ngrok-free.app/api/v3/site

    2. Log in to a Mastodon server that’s designed to let users experiement with ActivityPub (https://activitypub.academy/), to subscribe and unsubscribe to a new-created test community. It looks from there like:

    But in lemmy, it shows the same ‘WARN Error encountered while processing the incoming HTTP request: lemmy_server::root_span_builder: Unknown’ that I quoted in my first post

    I don’t know what that error means. But I can see that lemmy still thinks it’s federating with 1/1 instances, and if I create a post on the test community, I can see it do:

    INFO send:send:send_lemmy_activity: lemmy_apub::activities: Saving outgoing activity to queue https://f2d0-77-100-144-83.ngrok-free.app/activities/announce/create/ea41951a-6430-4e53-a5c4-afd644bf0824
    Jan 11 11:47:43 lemmyA lemmy_server[977]: 2024-01-11T11:47:43.343193Z  INFO send:send_lemmy_activity: lemmy_apub::activities: Saving outgoing activity to queue https://f2d0-77-100-144-83.ngrok-free.app/activities/create/bfcbf25e-37ab-4cfa-b44d-92cecacb1e56
    
    1. To investigate the error, I tried sending JSONs in the same format that Mastodon uses, but utilising a command-line script. The Follow works, but the Undo-Follow doesn’t. The header returned shows the same error as journalctl does: 400 Bad Request "{\"error\":\"unknown\",\"message\":\"\"}"

    I then recrafted the JSONs to be more like lemmy, changing the ‘id’ of Undo to have ‘activities/undo/UUID-string’, and that works. No entries in journalctl, and a 200 OK Response header.

    1. From lemmon.website, I can use the script to Follow and Unfollow communities on lemmy.ml

    EDIT: I’ve had some success with this. Using the private key of the old Mastodon user I’m no longer getting stuff from ‘memes’ now, I think. (still stuff from ‘asklemmy’ though).

    I’ll keep tinkering with this. Maybe during testing I followed asklemmy from another user. In the meantime though, it’d help enormously if any Follows from anyone at lemmon.website could be undone at your end (like I say: it’s all me)


    (There is still the JSON problem though. It suggests that any ‘Undo-Follows’ you get from mastodon accounts aren’t being processed properly, so you’re maybe wasting subsequent federation activity. I realize that’s more a lemmy software issue than lemmy.ml issue, but it’s my understanding that you’re the same people!)