Skip to content

v6.2: ### Notable changes

Compare
Choose a tag to compare
@snarfed snarfed released this 16 Mar 04:50
· 334 commits to main since this release
416c4de

Notable changes

  • as1:
    • get_owner bug fix for post, update, delete activities.
    • activity_changed: add new inReplyTo kwarg.
    • is_public: add new unlisted kwarg.
  • as2:
    • to_as1: bug fix, preserve objectType: featured for banner/header images even when mediaType is also set.
    • is_public: add new unlisted kwarg.
    • from_as1:
      • For icon field, prefer image types that are allowed by Mastodon.
      • Bug fix, handle stop-following with string object id.
  • atom:
    • Add new extract_entries function.
    • activity_to_atom: default actor/author name to username.
    • atom_to_activities: support top-level entry element as well as feed.
    • atom_to_*:
      • add object.author
      • default objectType to article/note and verb to post
      • convert link rel=self/alternate to url
      • use displayName in objects instead of title
      • Interpret entry link without rel as self link.
    • If entry.author doesn't have id or url, default them to feed author's.
  • bluesky:
    • Implement create and preview.
    • Fully support both record and object types in from_as1 and to_as1. Use to_as1's type kwarg and from_as1's out_type kwarg to disambiguate.
    • Implement Bluesky.post_id.
    • Add new blob_to_url function.
    • Delete as1_to_profile, switch from_as1 to return $type: app.bsky.actor.profile.
    • Convert HTML summary and content to plain text.
    • Implement Bluesky.user_to_actor, Bluesky.get_actor.
    • Don't log in (fetch an access token) eagerly in the constructor; wait until the client makes a call.
    • Prefer DID to handle in API calls that accept either.
    • at_uri_to_web_url: support lists.
    • web_url_to_at_uri: convert profile URLs like https://bsky.app/profile/snarfed.org to profile record URIs (at://snarfed.org/app.bsky.actor.profile/self) instead of repo URIs (at://snarfed.org).
    • Add from_as1_to_strong_ref.
    • Allow :s in record keys (atproto#2224).
    • to_as1:
      • Convert blobs, both new and old style, to PDS getBlob URLs.
      • Add new uri kwarg.
      • Translate handle to username, add new repo_handle kwarg.
      • Add support for app.bsky.feed.repost, app.bsky.graph.defs#listView, app.bsky.feed.defs#blockedPost.
      • Add actor/author based on repo_did.
      • Improve url field: include custom handles, only use repo_did/handle for app.bsky.actor.profile.
      • Handle bad facet indices that point inside Unicode code points (example; discussion).
      • Convert !no-unauthenticated label on profiles to AS1 @unlisted audience target (bridgy-fed#828).
    • from_as1:
      • Add out_type kwarg to specify desired output type, eg app.bsky.actor.profile vs app.bsky.actor.defs#profileViewBasic vs app.bsky.actor.defs#profileView.
      • Add blobs kwarg to provide blob objects to use for image URLs.
      • Add client kwarg to fetch and populate CIDs.
      • Handle mention tags pointing to bare DIDs.
      • Use parent as root in replies. (Technically wrong in cases where the parent isn't the root, but we don't actually know the root. 🤷)
      • Bug fix: handle bare string URLs in image field.
      • Bug fix: handle tags without url field.
      • Strip trailing slash from home page URLs in order to remove visible / from rel-me verified links on Mastodon etc.
      • Convert attributedTo to singular if it has only one element.
      • If name isn't set, fall back to preferredUsername or infer Webfinger handle from id or url.
      • Prioritize bsky.app profile URL before handle URL in url field (bridgy#1640).
      • Convert bsky.app inReplyTo URLs to at:// URIs.
      • Tighten up datetime conversion to match the ATProto recommended format.
  • facebook:
  • github:
    • When converting data to AS1, use displayName in objects instead of title.
  • mastodon:
    • get_activities bug fix: use query params for /api/v1/notifications API call, not JSON body.
    • Convert HTTP 200 responses with error JSON field (eg from Sharkey) to 400/401 exceptions.
    • Prefer media_attachments.remote_url when available since it may be more long-lived than url for remote statuses (bridgy#1675).
  • microformats2:
    • object_to_json bug fix: handle singular inReplyTo.
    • json_to_object bug fix: handle list-valued location.
  • nostr:
    • get_*: return partial results when the websocket connection is closed prematurely.
    • to_as1: handle invalid NIP05 values (eg {})
  • rss:
    • to_activities:
      • Use objectType: note if title isn't set or is a prefix (possibly ellipsized) of content/description.
      • Add support for images in media:content tags (#674).
  • Source:
    • postprocess_activity/object: add mentions kwarg to convert @-mentions in HTML links to mention tags.