タンパク質タンパク質タンパク質食え食え食え食え食え食え食え食え食え食え食え食え #bot
ボンクラプログラマー
頭とお腹が弱い。
最近は個人鯖の @shibafu528 がメインです。
⚠️ CW設定のない下品な発言が非常に多いです。これは仕様ですのでご了承下さい。
ℹ️ spam対策でフォロー承認制にしています。上の一文が構わないという方ならお気軽にどうぞ。
FINAL FANTASY XIV 関連の著作物は
(C) SQUARE ENIX CO., LTD. All Rights Reserved.
タンパク質タンパク質タンパク質食え食え食え食え食え食え食え食え食え食え食え食え #bot
y4aをmulti module構成にするとしたらどう分割できるかなと考えながら現状のコードを見ていたが、クラス間の依存関係が大変なことになっていて目を伏せた
Yukari dissonance、CK凍結された時に一時的に開発されていたブランチなんですが、中途半端にmasterに統合されている
y4aのMastodonのコードなんかはMastodonに関係するのがだいたいパッケージにまとめられてるけど、元々のTwitter関連のやつは散らかってたり、Twitterっぽいパッケージの中に中立なやつがいたりしてヤバいな
shibafu.yukari.twitter にアカウントデータのEntityがいるとか、YQコアの shibafu.yukari.filter.source にTwitter関連のFrom句全部入ってたり
Mastodon用のYQ From句は shibafu.yukari.mastodon.source に入ってるのを考えると、まったく対応しない
AuthUserRecord.javaをshibafu.yukari.twitterからshibafu.yukari.databaseにMove refactorかけたぞ…
……あれっ、もしかしてy4aのPreformedStatus.java葬れるんじゃね?
Bookmark.javaがこいつを継承していてシリアライズとかされてるので残すしかないと思ってたけど、実際にシリアライズしてる内容は中に入ってるtwitter4j.Statusだけだわ
Bookmark.javaをTwitterStatus.ktにデリゲートするクラスとして書き直せばワンチャンいけるわこれ
@tsutsuii イッヒフンバルト ゲーベン! フンデルベン! モレル ベンダシタイナー!フンデルト モレル ハイル! フンバルト フンベン ケッツカラデルド! ヘーヒルト デル ハイル! ミーデルベン! ウンコ
ブックマークに手を入れたらListViewが再描画されるたびにランダムに要素が増えたり減ったりする怪奇現象が発生した
遥か昔にテスト用にブクマしたkbのツイートのローカルブクマが消せないとかいう謎バグが出てきたが
shibafu/yukari/twitter/statusimpl/PreformedStatus.java (2013/10/13 2:59〜2020/12/20 3:20)
このクラスがやっていたことは、Yukari 3.0のリリース時点で全部別のクラスで書き直していたので、本当に微妙な依存が残ってて消せなかったというだけ
このアカウントは、notestockで公開設定になっていません。
TL上で複数のアカウントから得た同一のトゥートをマージするなら、idは着信アカウントのドメインをキーとして確実に控えておかなければならない。何故ならば、非公開投稿の場合にそのidを照会しなおす手段がないからだ。という事にぶち当たったクライアントが果たしてこの世にいくつあるのか。
普通のクライアントはトゥートと着信アカウントのコンテキストが一貫して保たれてるからこんなことは起きないよ。
どれか1つのサーバ上でのidのみを保持するようになってると、非公開投稿だとURLから引き直せなくて詰むんだよね。これはアカウント切り替えでも同じといえば同じですが。
公開投稿ならsearch APIでいつでも各サーバローカルのidを得ることができる
着信したアカウント達では返信やリアクションの操作ができて然るべきだろう、という要件を満たせなくなるんすよ
Twitter以上にTLマージが面倒臭いのと、世の中の大抵の人はアカウントごとに捉えることに慣れてるしそれで困らん。
グローバルな識別子としてはURLだけど、API操作をするためにはローカルな識別子であるこのタプルが必要
えーと配信元サーバのIDのみを尊重して重複排除した瞬間に、別ドメインのアカウントから操作をかけたいときにローカルIDの引き直しが必要になる。非公開投稿だと詰む。
公開投稿ならsearch APIでいつでも各サーバローカルのidを得ることができる
y4aだとTLキャッシュみたいなのが無いからただのメモリ上のListだけど、永続化するならPKはURLかな。1:nで(domain, local id)をそこにぶら下げるしかないかな。
if toot.Domain == account.Domain {
return toot.Id
} else {
local := toot.FindLocalIdCacheByDomain(account.Domain)
if local != nil {
return local
}
localToot = account.Api.Search(toot.Url)
if localToot != nil {
return localToot.Id
}
}
// id lost!!
ローカルのIDは実装上DBのPKなので、これはどのアカウントを使おうと所属サーバが同じであれば同一となり、使い回せる
このアカウントは、notestockで公開設定になっていません。
おお、Mi BandをSleep as Androidと連携させたらデータ増えた
Yukari Next 3.0.5.2155 (linkage 201220 356e63b)/exvoice arm64-v8a(Sep 13 2020 22:06:25)/Google/Pixel 3/10
ここでリグレッションが発覚すると、たぶん12/22のPlayストアリリースが3.0.5.2150になる
このアカウントは、notestockで公開設定になっていません。
この写真で言う中央と右で止められるタイプのケースなんだが、新しく買ったHDDには中央の穴がない…
一番右下のシャドーベイに入れたんだけど、右側が実質的にアクセス不能なので1点留めとかいうアレになった
このアカウントは、notestockで公開設定になっていません。
今回2台を1台にマイグレーションするのでちゃんとしたSATA電源が1つ浮くから廃止できなくもないが…
余ったネジとか片付けてたら、PC系まとめてつっこんである箱の中から未開封のiPod nanoが出てきました……
これは0円で入手したものなので未開封なんです 自分で買ってたら一瞬で開けるよなあ!?
メインマシンに突っ込んでデータディスクをRAID 1にするのはアリなのかもしれない
まあこれはこれで、TS整理したくなったときのコールドストレージとして転用できるな
一年生になったら - ニコニコ動画
https://www.nicovideo.jp/watch/sm37958864
デスノMAD未だに供給あるのウレシイ…ウレシイ…
キラいわよ! - ニコニコ動画
https://www.nicovideo.jp/watch/sm37981837
生ステわよ! - ニコニコ動画
https://www.nicovideo.jp/watch/sm37986489
NVIDIA の Linux 用プロプラドライバが原因でクラッシュする問題、これだ https://forums.developer.nvidia.com/t/bug-report-455-23-04-kernel-panic-due-to-null-pointer-dereference/155506
MAD批評家でておくれのとしぁ「体ガタガタ」 #bot
このアカウントは、notestockで公開設定になっていません。
あれ?もずの単行本これしか持ってないんだっけ?と思いましたが、ほた放で物理で1冊持ってるの思い出した
これ逆に自分が物理で買った本はめっちゃ取りづらい場所にあるパターンだな、地層みを感じる
良品週間が来なかったせいで本棚(または相当するもの)を調達できてなくて、物理本の検索コストが異常に高い