Breaking changes:
mastodon: Switch AS1 actor and object ids fromtag:URIs to the real AS2 ids.
Non-breaking changes:
as1:prefix_urls: handle string values.is_public: returnFalsefor public CRUD activities on non-public objects.is_dm/recipient_if_dm: allow DMs with recipient inccinstead ofto; evidently NeoDB sends DMs like this.targets: add quoted posts, ie attachments withobjectType: note.- Add new
quoted_posts,mentionsfunctions.
as2:- Add support for pinned posts via the
featuredcollection. - Handle
repliesas a collection in bothfrom_as1andto_as1. from_as1:- Add
rel="tag"to hashtag HTML links andclass="h-card"to mentions incontentto prevent Mastodon from generating link previews for them.
- Add
to_as1:- Handle bare string
attachmentvalues. - Handle multiply-valued
type.
- Handle bare string
is_server_actor: returnFalsefor id URLs with query parameters.- Add new
URL_REconstant.
- Add support for pinned posts via the
bluesky:- Add
pds_url,**requests_kwargskwargs toBlueskyconstructor. - Convert
followersCount/followsCountinapp.bsky.actor.defs#profileViewDetailedto the non-standardfollowersandfollowingAS1 collections (borrowed from ActivityPub). - Convert pinned posts (just one per actor) between Bluesky's
pinnedPostfield and the fediverse'sfeaturedcollection. - Switch
getFollows/getFollowerscalls from PDS to AppView. (These requests to Bluesky PDSes were timing out connection from Google Cloud IPs as of 2025-05-08.) from_as1:- If
contentis in a language that doesn't delimit words by spaces, truncate between any characters (snarfed/bridgy-fed#1625). - Bug fix: handle bare string
image. - Bug fix for when last line of content is a bsky.app URL that's not a post (bridgy-fed#2064).
- If
to_as1:- Bug fix, handle facets with bad indices (in the middle of Unicode code points) interacting with HTML characters.
- Better error handling when embed record
$typeis invalid.
web_url_to_at_uriandBSKY_APP_URL_RE: tighten validation, check authority and rkey for allowed characters.
- Add
mastodon:- Convert
followers_count/following_countin Mastodon accounts to the non-standardfollowersandfollowingAS1 collections (borrowed from ActivityPub). - Add
**requests_kwargstoBlueskyconstructor.
- Convert
microformats2:from_as1: for quote posts (note attachments), populate theiridintourl, notuid(bridgy-fed#2045).to_as1:- Bug fix: handle
u-bookmark-of h-cite(#918). - Only populate
u-urlintourlif it's a valid URL.
- Bug fix: handle
nostr:- Add new
nip05_to_npubfunction to resolve NIP-05 identifiers. - Add new
bech32_decode,bech32_encode,bech32_prefix_for,pubkey_from_privkey,uri_forfunctions. - Add new
verifyfunction to verify event signatures. - Add NIP-24 support for additional tags and fields in profiles.
- Add NIP-92/94 support for
imetatags for images, video, audio. from_as1:- Add optional new
privkeykwarg to sign output events and populatepubkeywith. - Add optional new
from_protocolkwarg for setting NIP-48proxytags in output events. - When converting
created_attopublished, include UTC timezone. - When converting actors to kind 0 Nostr events, remove unset fields from content instead of setting them to null, and only use
_NIP-05 username with full domains. - Don't escape Unicode characters (background).
- Convert HTML
contentto Markdown plain text.
- Add optional new
Nostr:- Add new
user_urlmethod. - Add optional new
privkeykwarg to constructor to sign events with; removepubkeykwarg. createnow signs activities before sending to relays. Now requires theprivkeymember attribute to be set.query:- Verify signatures; discard events with invalid signatures.
- Add NIP-42 support; reply to
AUTHchallenges with signatures from the storedprivkey.
- Add new
- Add new
rss:to_as1: handle UNIX timestampdcterms:modifiedvalues without overflowing.