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
: returnFalse
for public CRUD activities on non-public objects.is_dm
/recipient_if_dm
: allow DMs with recipient incc
instead ofto
; evidently NeoDB sends DMs like this.targets
: add quoted posts, ie attachments withobjectType: note
.- Add new
quoted_posts
,mentions
functions.
as2
:- Add support for pinned posts via the
featured
collection. - Handle
replies
as a collection in bothfrom_as1
andto_as1
. from_as1
:- Add
rel="tag"
to hashtag HTML links andclass="h-card"
to mentions incontent
to prevent Mastodon from generating link previews for them.
- Add
to_as1
:- Handle bare string
attachment
values. - Handle multiply-valued
type
.
- Handle bare string
is_server_actor
: returnFalse
for id URLs with query parameters.- Add new
URL_RE
constant.
- Add support for pinned posts via the
bluesky
:- Add
pds_url
,**requests_kwargs
kwargs toBluesky
constructor. - Convert
followersCount
/followsCount
inapp.bsky.actor.defs#profileViewDetailed
to the non-standardfollowers
andfollowing
AS1 collections (borrowed from ActivityPub). - Convert pinned posts (just one per actor) between Bluesky's
pinnedPost
field and the fediverse'sfeatured
collection. - Switch
getFollows
/getFollowers
calls 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
content
is 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
$type
is invalid.
web_url_to_at_uri
andBSKY_APP_URL_RE
: tighten validation, check authority and rkey for allowed characters.
- Add
mastodon
:- Convert
followers_count
/following_count
in Mastodon accounts to the non-standardfollowers
andfollowing
AS1 collections (borrowed from ActivityPub). - Add
**requests_kwargs
toBluesky
constructor.
- Convert
microformats2
:from_as1
: for quote posts (note attachments), populate theirid
intourl
, notuid
(bridgy-fed#2045).to_as1
:- Bug fix: handle
u-bookmark-of h-cite
(#918). - Only populate
u-url
intourl
if it's a valid URL.
- Bug fix: handle
nostr
:- Add new
nip05_to_npub
function to resolve NIP-05 identifiers. - Add new
bech32_decode
,bech32_encode
,bech32_prefix_for
,pubkey_from_privkey
,uri_for
functions. - Add new
verify
function to verify event signatures. - Add NIP-24 support for additional tags and fields in profiles.
- Add NIP-92/94 support for
imeta
tags for images, video, audio. from_as1
:- Add optional new
privkey
kwarg to sign output events and populatepubkey
with. - Add optional new
from_protocol
kwarg for setting NIP-48proxy
tags in output events. - When converting
created_at
topublished
, 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
content
to Markdown plain text.
- Add optional new
Nostr
:- Add new
user_url
method. - Add optional new
privkey
kwarg to constructor to sign events with; removepubkey
kwarg. create
now signs activities before sending to relays. Now requires theprivkey
member attribute to be set.query
:- Verify signatures; discard events with invalid signatures.
- Add NIP-42 support; reply to
AUTH
challenges with signatures from the storedprivkey
.
- Add new
- Add new
rss
:to_as1
: handle UNIX timestampdcterms:modified
values without overflowing.