andante

0806

眠い

Orvalのfetch API対応はやはり壊れているように思うヘッダーを外から渡せるようになっていない渡せるように見えるがContent-Typeヘッダを内部で渡しているのがちゃんとマージされていないので消えてしまう修正のPRを出した方がいいのか簡単にできるのかはわからないけども
OpenAPI GeneratorもOrvalも微妙で困るなと思ういやOpenAPIのほうが少しマシなのかでもこっちはこっちでsingle-fetchと相性がよくないので悩ましいどいつもこいつもなハーッ
それはさておきCookie認証はなんとかできつつある妥協の産物だが妥協点を決められたのは良かった結局こういうのを一度やっておく筋トレが限られた時間の中で設計と実装をやっていかなければならない時のために必要なんだなと思う


寝ます

0805

平日に休みをとっても結局仕事のことが気になってあまり気が休まらないんだよなそうでもないか

休みだけど特にたいしたことはしていない地面師たち見始めた面白い

ログイン盆栽は今日は手をつけていない結局Remixでやる限りは何らかのバケツリレーを許容するしかなさそうだ一旦はそれで進めることにしてあとで何かうまい抽象化ができないか考えよううーむ
そうと決まればつぎはフロントエンドに注力か


寝ます仕事か〜

0804

ログイン盆栽をずっとしているなんかまあバックエンドは結論出つつあるのだけどRemix側が難しい結局Cookieを食わせて回らなきゃいけないしバックエンドから送られてきたらセッションに入れなきゃいけないがそのあたりの共通化がうまくできそうもないなんかラッパー書けばいけるのか


寝ます明日は夏期休暇でおやすみ

0803

ログインをやろうと思っていろいろ試行錯誤しているGoogle Sign Inに対応するボタンを置くのは問題なくできたが結局どのようにログインセッションを持つのか悩ましい今のところはバックエンドがセッションクッキーを発行するのをそのまま使えばいいかなと思うけどそれだとCookieの内容にはフロントエンドはアクセスできないからログイン状態確認エンドポイントを作る必要があるいやそれもよくわかってないな結局RemixはCookieをどう扱うんだ調べなくては

誰が勇者を殺したか読んだ素直結末でもう一回くらいひっくり返ると良かったと思う続編がちょうど出たところだったので買った


寝ます

0802

ずっと盆栽utoipaもなかなか癖があるなと思いつつとりあえずはいったんこれでいいかというスタイルに落ち着いたただこれくらい自動でやってくれないのかと思う部分はありまあそれはもう自分でマクロを書いた方がいい領域の話なのかもしれないと思った
一方でOpenAPI generatorのテンプレートは少しならカスタマイズが利くという話もありそっちを模索するほうが結局は正気なのかもしれないと迷うついでに言えばOrvalもイマイチ使い勝手が良くない悩みが多い
もっともこんなのは完全に盆栽要素なので今はほどほどにして実装を進めたい今度こそログインをやる


寝るよ

0801

盆栽に明け暮れているバックエンドがutoipaでスキーマを生成しフロントエンドはorvalでクライアントを生成する結局二段構えの自動生成になるのは前と同じ
utoipaが思ったほど気が利かないでなかなかうまくいかないこれはOpenAPIの問題でもある気がするけど命名をうまくやらないと名前が衝突する気がするまあ今回はそれほど気にしなくていいと思うけどうーん
そんなことよりせっかくルーティングを自分で書いたのだから本来やりたかった認証部分に着手したいのだけどまあこうして試行錯誤しておくといつか本業で役に立つと思うから筋トレをしておくか……

本業のほうは負荷試験を始めたk6は便利


寝ます

0731

本業ではずっとKotlinを書いているんだけどSpringBootがだいぶ憎くなってきたなんでもかんでも俺の知らんものをDIしないでくれそして俺の知らん例外を投げないでくれ
あとGradleも何が悲しゅうてこんなややこしいものを扱わねばならんのかと思ういやこれは僕が1秒たりとも勉強してないからだけどでもVersion Catalogとかって誰も使ってなくないってくらい情報が出てこないのよなうーん

本業じゃないやつはこれまでOpenAPIに生成させていたバックエンドのルーティングを全部消して自前で書き直しさらにそこからスキーマを生成させるところまでutoipaはまあ普通に使えるけど欲をいえばもう少しコードからよしなに読み取ってほしい今回はAPIの本数が10本もないくらいだから別にいいけど増えてくるとやはり煩わしいのではないかと思う結局自分でマクロ書けって話になるのか
ついでにエラーハンドリングもすこし改善したまだボイラープレートコードが残っているからこれはderiveマクロを書こうかな各エラーにステータスコードを割り振るためのFromは自動生成させたいところだ
フロントエンドもOpenAPI generator以外の選択肢を探してみようかなと考えているなかなか先に進めなくてもどかしいね


寝ますそういえば就職して3ヶ月試用期間が終わりだ

0730

バックエンドに認証をつけたりセッション管理をつけたりしようとしているのだがそうするとOpenAPIの生成コードではうまくいかなくなってしまったAxumはリクエストハンドラの引数にextractorを追加していくシステムだからコードジェネレイタが用意したextractorしか使えない今回は署名済みクッキーによるセッション管理をやりたかったのでこれではダメだ
しばらく考えたがこれはschema firstを棄てるタイミングなのかなと思うもはやスキーマにバックエンドが合っていることを保証するものはないのなら逆にcode firstに生成してやる方がいいただcode firstはそれはそれで使い勝手悪いなという話もありそこは慎重に考えたい
まあ具体的なところは明日以降見ていく


寝るよ

0729

記事投稿APIをとりあえず作ってRemixのactionで呼べるようにしたいいねあとは認証をやらないといけないのだがこれはどうするのがベストプラクティスなのかううむ
スタイルもすこし整えたChromeでは約物の余白調整にtext-spacing-trimが使えるけどFirefoxでは秘伝のCSSでやらなくてはいけないこのロジックをフロント側に持ってくることも考えられなくはないけど悩ましい基本的にはバックエンドでやる方が速いし確実だろうと思うのだけども


寝ます

0728

主にCSSをいじっていたblogのスタイルを多少変えようとも思っているけれどとりあえず完コピを目指している記事周辺のレイアウトはだいぶ再現できてきたflexとかgridとか現バージョンを書くときも多少使ったけどその時よりすこしうまく使えるようになっていると思うあとtailwindにも慣れてきた

20年近く前にCSSを学んだから文書の内容と装飾は綺麗に分離してCSSのクラス名には意味を表す名前をつけて……みたいな考えかたが頭にあるのだけれどReactでWebアプリケイションを作る上ではすこし違う風に考えるほうがいいのかなと思うようになったまずもはやこれは文書ではないその境界は曖昧だがというのと意味的な区切りはコンポーネントとして作れるのだからCSSのクラス名で表現する必要はないというのとtailwindのクラス名はそれがどんな装飾であるのかを端的に表していてそれがどんな意図で使われているのかはコンポーネント名に現れているもはやCSSを見てこれは何に使われているのだろうかと考えることはないインラインで書くのと同じのだからそのための命名規則も必要ないということか

見た目が幾分それらしくなってきたしそろそろバックエンドの実装に戻るべきか投稿とかできるようにしたい


寝ます