05:01:08
icon

ログボ

06:32:04
icon

@kamisuke おはよう、王

08:51:40
2023-07-31 08:50:42 画眩님의 게시물 ggagen@pawoo.net
icon

This account is not set to public on notestock.

08:51:41
2023-07-31 08:50:44 画眩님의 게시물 ggagen@pawoo.net
icon

This account is not set to public on notestock.

09:14:31
icon

軽微な不具合を修正する更新を行いました。

・動画を含む参照のパブリックページがエラーになる不具合を修正

・APIで未登録のハッシュタグを参照しようとしたときに発生するエラーを修正

・不正なacctで発生するドメイン検証コードのエラーを修正

・読み取れない画像のthumbhash生成時に発生するエラーを修正

09:16:11
icon

:ikiterudakedeerai:

09:55:52
icon

サーバーリスト、どんな順番で並んでいるものがほしい?

10:00:53
icon

@yamako なるほど。その切り口は大事ですね。

10:05:11
icon

@zero なるほど。優先順位高いですね。

10:13:41
icon

これを探しに行かねばならない
QT: fedibird.com/@noellabo/1107520
[参照]

Web site image
のえる (@noellabo@fedibird.com)
Web site image
投稿の参照(1件) by のえる (@noellabo@fedibird.com)
10:13:49
2023-07-21 21:18:28 のえる님의 게시물 noellabo@fedibird.com
icon

とりあえず、やべえこれ発売したら買おうとか、そういうことしか考えて無いよ
sej.co.jp/products/a/item/0412

エリックサウス監修 ビリヤニ
11:00:21
2023-07-31 10:59:04 Juja님의 게시물 ymd@fedibird.com
icon

This account is not set to public on notestock.

11:03:00
icon

鯖缶(生)

11:05:07
icon

鉄道趣味が高じて仕事になっている方もおられますよね。私の友人にも複数おりますが……

11:10:04
icon

Mastodonいじるために新たにrubyやRails覚えたりjavascriptでReact + ReduxしたりWebSocketしたりするの覚えたりしてるけど、全部趣味ですものね。ノーカウント。

11:15:14
icon

無限に上手に使いこなせるようになりたいって思うし努力してるけど、勉強……? っていう感じ。

11:48:46
icon

@noppe Statusがorderd_media_idsを保持するようになったのはv3.5.0からなので、いまのところ未対応です。でもこれ取り込んじゃった方がよさそうですね。

11:53:12
icon

@noppe バージョンあげるときはv4.2になる(大手術)ので、capabilityで対応しますー

11:54:19
icon

@makihara 凜々しい……

11:56:19
2023-07-31 11:43:08 かじ님의 게시물 kaji2@fedibird.com
icon

This account is not set to public on notestock.

12:52:05
icon

@yuh_yamaeda ライスがバスマティライスにアップデートされてるよ!

13:02:01
icon

@amurano5 もう長いですよ。だいぶ前です。

13:15:21
icon

@amurano5 このサーバ、ベースがv3.4.1なんで、表現が2年前のままなんですよ。

ほとんどのサーバは既にこうなってるんです。

投稿!
Attach image
13:50:47
icon

これから長い投稿いくよーw

13:53:03
icon

MastodonやMisskeyが、それぞれ別々に設置されている違うプログラムなのに、お互いに繋がることができる仕組みは、主に『ActivityPub』という通信規約(プロトコル)によって実現されています。

ActivityPubでは、私たち一人一人のアカウントをActorと呼びます。

Actorは、別のActorと、「フォローしたい」「いいよ」というやりとりをします。

投稿に対して「好き!」って反応したり、新しいノートを「作ったよ」、ノートをみんなに「アナウンス」します(ブースト・リノート)

これらのやりとりの語彙があらかじめ定義されています。

先程の例の順番でいうと、Follow, Accept, Like, Create, Announce というActivityとして定義されています。

Activityは、何を対象とするかを伴っていて、Actorを対象とするときもあれば、投稿(短い文章)を表す表現であるNoteや、「フォローしたい」というリクエストを許可したり、送った側が取り消すために、「フォローしたい」というActivityそのものを対象として指定することもあります。

このあたりの約束ごとが共通化されているため、それに従うことで、お互いのやりとりが可能になっています。

13:53:21
icon

Actorは、それぞれがinboxというActivityを受け入れる窓口を持っていて、他のActorから送られてきたActivityを処理します。

また、自分が送ったActivityをoutboxに保持しています(ずっと溜まっていきます)。

フォローしているActorのコレクション following も持っています。

フォローされているActorのコレクション followers も持っています。

これは、フォローを要求して、それが受け入れられた時に、お互いがコレクションに追加することで、その状態を維持します。

新しい投稿(Note)をCreateした時、つまり新規投稿時には、followersコレクションのActorのinboxに対してActivityを送ります。

そうすると、フォロワーのActorは、inboxに届いたActivityを処理して、フォロー相手の投稿が読めるようになります。

Activityを発行したActorが、フォロワーに対してそれを送信することで、お互いが繋がるネットワークが実現されています。

Actorの実際の表現例(抜粋)
Attach image
13:53:34
icon

さて、ここまでサーバが説明されていません。存在感ゼロですね!

実は、ActivityPubでは、サーバーを直接表すActorのような定義がありません。

便宜上、サーバーにもActorを割り当てることはありますが、主役ではありません。

とはいえ、サーバーの存在は別の形で表現されていて、効率の改善に貢献しています。

先程のActor毎のinboxがありましたが、この他にshared_inboxという、同じサーバのActorが共有して使うinboxがあります。

このshared_inboxにActivityを送ると、Activityに指定しておいた宛先のActorに対して、相手サーバーに委託してまとめて送ることができるようになります。

「あなたのサーバの、私のフォロワーに対して、Create - Noteしたのでよろしくね!」という感じで、shared_inboxに一回だけ送れば済む仕組みです。

実際の動きとしては、followersコレクションのActorのshared_inboxを調べ、同じものは一つにまとめてしまい、送信件数を最小限に減らしています。

なお、shared_inboxが無い場合は、個々のinboxに送ります。

14:09:58
icon

以上は、ActivityPubの枠内で行われる仕組みについて説明したものですが、

サーバーはinboxに送られてきた新しい投稿が公開してもいいものだと判断したときに、

連合タイムラインという特別な仕組みを用意していて、そこでみんながみられるようにしたり、

同じサーバーのActorが発行した新規投稿のActivityを使って、ローカルタイムラインという仕組みを実現したり、

いろいろとActivityPubの仕組みには存在しない付加機能を提供しています。

サーバーはActorのコレクションを持っているので、他のActorを探す機能を提供することができます。

投稿のハッシュタグをコレクションして、ハッシュタグで投稿を一覧する機能を持たせたりもしています。

ActivityPubにはハッシュタグの共通の表現は用意されていますが、それをどう使うかについては定義されていません。

そのあたりは、ActivityPubで通信する個々のサーバーにより定義され、実装されています。

このActivityPubの規格外の部分は、各実装同士がお互いの機能を理解して、互換性をとる努力をすることで、相互のやりとりを実現しています。

かなり自由だけど、それなりに大変な世界です。

14:13:25
icon

@kussy_tessy そうです。

B1さんが、自分のフォロワーであるA1さん、A2さん、A3さんの、それぞれのshared_inboxを調べると、同じ宛先表現になっています。

この場合は、まとめて1回で済ませてOKです。

実際、相当な節約になっていますので、この仕組みがないとかなり大変です。

14:23:01
icon

@kussy_tessy たとえば外部配送をリレーに全部委託してしまって、自分では手抜きをするノードを作るという発想をすることもできるので、実はいろんなやり方があります。(そういう実装はまだ作られていないと思いますが)

14:56:39
icon

Mastodonでは長らく、投稿する行為をToot(トゥート)、投稿自体をStatus(ステータス)と呼んでおり、定着しておりましたが、

2021年4月22日に作られたこのプルリクエストにて『Post』に変更することが説明・宣言され、いくらかの議論の後、マージされました。詳しくはプルリクエスト本体のやりとりをみて下さい。
github.com/mastodon/mastodon/p

なお、この時点では投稿ボタンだけは『Toot』という表現が維持されましたが、その後『Post』に変更になりました。

また、用語変更の抜けがあちこちにあったため、その後ちょこちょこ修正が行われました。

ただ、この変更の周知はあまり行き渡らなかったようで、この時期に変更が行われたことのみならず、そもそも変更されたことがいまもって伝わっていないという状況かと思います。(正直、しっかり広報されてはいないと思います)

Web site image
Change the nouns "toot" and "status" to "post" by Gargron · Pull Request #16080 · mastodon/mastodon
15:13:05
icon

@rino ちょっとここでも言及されてますが、他ではどうだったかな? 把握できていないので、issueやpull-request探してみてください。

Mastodonのプログラム内部ではreblog、表面上はboost、Pleromaはrepeat、Misskeyはrenote、ActivityPubはAnnounce、といった具合で超バラバラなので、じゃあどうすればいいか、合意が取りにくいかもしれませんね。

15:21:33
icon

@hanagami13 あ、そうだpublishでした。

15:22:43
icon

あ、ごめん。投稿行為は『Post』ではなく『Publish』でした。(日本語だとどちらも投稿になります)

ぶらさげる形で訂正いたします。

15:23:41
icon

@weepjp 開発を引き継ぎたいというメンテナが現れて、再注目されたからじゃないかな。

19:10:31
icon

@chihaya これは、CWされた投稿を一気に開いたり閉じたりするボタンです。

CW付きの投稿に返信が続いている場合などで非常に便利です。

21:07:17
icon

なんか挙動がおかしいなと思っていたら、検索用のElasticsearchクラスタ3台のうち1台が止まっていました……。復帰させました。

謎の遅延・未達(ブーストの未取得とか、特定ユーザーの配送が届かないなど)の原因になっていた可能性がありますので、不調を観測できていた方は様子をみていてください。

21:18:48
icon

@konchie ばれたかwww

22:10:07
icon

ブーストが届かない・遅れる不具合の原因がわかりまして、修正しました。

……そのため、しばらくブーストがまとまって飛んできますのでよろしくお願いします。

22:15:43
icon

結構な数の未処理ジョブが積み上がっているので、しばらく遅延します。解消まで気長にお待ちをー。

22:23:58
icon

てす