Iceshrimp.NET 2026.1.2-beta runs in the pasture with AuthorizedFetch on; its driver registers through the native API and takes Mastodon tokens from its OAuth form. The pair passes 225 cells. A new Iceshrimp note reaches its author's followers only, never an account it mentions or answers, until it is edited (G-0004, peer): delivery cells now say when a server holds a post only because it was addressed. The checker credits a seeder's fetch to the object fetched, not to the reply that needed it; the seeder skips the wait for an accept whose follow was already accepted; the PrivaPub driver signs its roots in again when a run reuses saved sessions. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LsXgEaXee4GCU1hwYgPJXw
31 lines
873 B
Python
31 lines
873 B
Python
"""The platform registry: name -> driver class and its site."""
|
|
from dialects.akkoma import Akkoma
|
|
from dialects.gts import Gts
|
|
from dialects.hollo import Hollo
|
|
from dialects.iceshrimp import Iceshrimp
|
|
from dialects.lemmy_api import LemmyApi
|
|
from dialects.mastodon import Mastodon
|
|
from dialects.misskey_api import Misskey, Sharkey
|
|
from dialects.privapub import PrivaPub
|
|
|
|
DRIVERS = {
|
|
"privapub": (PrivaPub, "privapub.test"),
|
|
"gts": (Gts, "gts.test"),
|
|
"mastodon": (Mastodon, "mastodon.test"),
|
|
"misskey": (Misskey, "misskey.test"),
|
|
"sharkey": (Sharkey, "sharkey.test"),
|
|
"akkoma": (Akkoma, "akkoma.test"),
|
|
"lemmy": (LemmyApi, "lemmy.test"),
|
|
"hollo": (Hollo, "hollo.test"),
|
|
"iceshrimp": (Iceshrimp, "iceshrimp.test"),
|
|
}
|
|
|
|
_made = {}
|
|
|
|
|
|
def driver(platform):
|
|
if platform not in _made:
|
|
cls, host = DRIVERS[platform]
|
|
_made[platform] = cls(host)
|
|
return _made[platform]
|