うどんウマー
ボンクラプログラマー
頭とお腹が弱い。
最近は個人鯖の @shibafu528 がメインです。
⚠️ CW設定のない下品な発言が非常に多いです。これは仕様ですのでご了承下さい。
ℹ️ spam対策でフォロー承認制にしています。上の一文が構わないという方ならお気軽にどうぞ。
FINAL FANTASY XIV 関連の著作物は
(C) SQUARE ENIX CO., LTD. All Rights Reserved.
セブンのやつ、うまいけど難点として関東人として醤油系の味のやつを食いたくなること
mruby-mixにはWorldとかSpellみたいな、インフラを提供するプラグインを何とかして入れなきゃいかんなあ
一方TwitterとかMastodonみたいな、Worldプロバイダーは入れる必要が無い
Worldプロバイダーは提供しないので、ホストプログラムがWorldの実装やトゥートみたいなメッセージのModelを提供しないといけない。
メッセージモデルの実装がなかなか面倒かも。mikutterプラグインは大抵Twitter::MessageかMastodon::MessageあたりのAPIを期待しているので、互換を取るようにしないと突然の死が待っている
urandomから十分な入力が得られなかった場合にこのエラーメッセージ出すっぽいな
Diva::Model()なんてのが定義されてるの初めて知ったんだが、これを使うには Diva::Model@slug に適切な値を設定する必要があって、それはmikutterではDiva::Model.registerなんだな
Diva::Model()、ObjectSpace class使ってるからこれmrubyにあるか……?って思ったが、あるらしい。ただしObjectSpace.each_objectはEnumeratorを返してくれない
でも我々にはEnumerator.newがあるから、こういう問題は簡単に解決できる
Enumerator.new {|y| ...} はマジで便利、これがあることを覚えておくと救われるケースがある
urandomの読み出しエラーとSpellのLocalJumpErrorにボコボコにされてる
Enumerator.new { |y| ObjectSpace.each_object(Diva::Model.singleton_class), &y.method(:<<)) }.find
から
Enumerator.new(ObjectSpace, :each_object, Diva::Model.singleton_class).find
にしたらパタリとLocalJumpError起きなくなった
結局spell plugin自体は何もコード直さずに動いたな。コアライブラリを移植するだけで終わった。
ホストプログラムから提供されたWorldインスタンスは関知すべきではない、という話はまず当然あるにして、さらにファイルシステムを直接使えない前提で設計しないといけない
直列化くらいまではmruby上でやってもいいけど、それを書き出すのはホストプログラムに依頼しないといかんな。
あ〜いや、永続化のための処理まるごとホストプログラムに任せたほうがいいな。mikutterのPlugin::World::Keepは直列化・暗号化までやってるがそんなんホストプログラムに任せたらいい。
$はお金っぽいからここに給料を入れよう→グローバルにどこからでも給料を差し引けるシステム完成
MiniTest::Assertions、refuteとか名前使ってるの嫌がらせだろ Fしか覚えられないから多分fuck_equalとか書いちゃう
どうすっかな。Androidだとシステムのlibcryptoは使用禁止だったはずなので、mruby-digestを雑リンクできないな
@toshi_a なんかプラットフォーム非依存でテキトーに解決したいところだが。
Plugin[:world]#world_order_hash -> Digest::SHA1
Plugin::World::KeepのほうがどうPlatform independedにするかよ
@toshi_a 実際に欲しいのはWorldが担当しているcollectionだけという説はあるね
ユースケース的には……ホストアプリケーションのアカウントが仮想Worldインスタンスとして提供されて、Spellパターンマッチに使えれば十分ですね…
こっちはなあ、イベントがコロナでコロって配れてない大量のポケットティッシュあんねん
このタイムスタンプが採番される以前は、完全に俺が手でmasterにマージして直接document rootにrsyncしてたので…
あ、違う。思い出した。masterにマージしてpushしたら、本番サーバのdocument rootでgit pullしてたんだ!!
オープンベータテストの時間だオラァッ!!!!(各位よろしくおねがいします、何かあったら連絡ください)
ぶるん!!!!!!!!!ぶるん!!!!!!!!!ぶるん!!!!!!!!!ちんちんです!!!!!!!!!!!!!!!!!!!!!!!!!
夏稀の彼氏 さんのチェックイン (8月30日 16:05) - Tissue https://shikorism.net/checkin/14445
Tissueのコントリビューターになると変なレイヤーの残ってるTissueロゴSVGとかが貰える
最小手で上手くやった感じがあるのは良いんだけど、なんかなーという感じなのでmruby-secure-randomをカスタマイズするか…?
mruby-secure-randomが悪いのか、mruby-ioが悪いのか判断付かない
SecureRandom.uuidしか使ってないし、libuuid使っていい?と思ったが、これだとAndroidで困るんな
弁当はセブンが好みだけど、サラダコーナーがローソン一択みたいな難儀な感じなので微妙につらい
エビフライを飼育する茜ちゃん / やかた さんのイラスト - ニコニコ静画 (イラスト)
https://seiga.nicovideo.jp/seiga/im10590523
完全にそのオタクの知り合い方面が身内運用してるやつなんだろうなって思ってたから、今の姿がやや信じられない節がある
このアカウントは、notestockで公開設定になっていません。
PHPのrandom_bytesの実装とか、CRubyのRandomの実装をみて、へぇ〜プラットフォームごとに面倒くせえなあってなった
PHPのrandom_bytesひとつとっても
Windows: CNG
Linux: getrandom syscall
FreeBSD: getrandom()
[NO]BSD: arc4random_buf()
他: /dev/urandom
うわ〜〜つらそ〜〜〜www
Linuxならgetrandom syscall実装以前とか、まあなんか色々なフォールバックで最後に/dev/urandom読みになってる
CRubyだとだいたい同じだけどmacOSならSecRandomCopyBytes()使ってるんだけど、PHPはやってなさそうだな