bouzuya.hatenablog.com

ぼうずやのにっき

体調が悪い

定例の dependabot 対応。 bouzuya/google-docs-api-types は思ったように進まず。 だいたい仕事している。 Google Analytics は嫌い。 体調が悪い。 今日のコミット。 bouzuya 1 commit Update crates.io links serde-firestore-value 2 commits 0.7.7 Upda…

疲れている

気持ち的に疲れている。 bouzuya/google-docs-api-types にすこしだけ型を追加して本日は終了。 今日のコミット。 google-docs-api-types 2 commits Add CreateParagraphBulletsRequest and BulletGlyphPreset Add UpdateTextStyleRequest and UpdateTextSty…

bouzuya/google-docs-api-types 0.1.0

bouzuya/google-docs-api-types をつくった。とりあえず 0.1.0 。まだ Request や Response 型ができていないけど、とりあえず。 誤って Firestore のコンソールで大量のドキュメントを削除してしまった。 今日のコミット。 google-docs-api-types 13 commit…

2024-W16 ふりかえり

2024-W16 をふりかえる。 2024-W16 の目標 とその記事 目標。 ☑ Google Docs API の検証を進める 記事。 2024-04-20 温かみのある型定義 2024-04-19 おなかをこわしている 2024-04-18 bouzuya/cloud-storage-signature にバージョン別のテストを追加 2024-04…

温かみのある型定義

Google Docs API のレスポンスの型定義をした。手動で……。たぶん Discovery Service (?) でスキーマを取得して生成するほうが良いんだろうな。今回は手で書いてしまった。 今日のコミット。 rust-sandbox 7 commits google-docs-pdf: Use serde_json::Number…

おなかをこわしている

子どもがもどして、ぼくはおなかを壊している。保育所でもおうとの症状が出ている子がわりと居るらしい。たぶん何かもらってきたな……。 std::sync::Mutex の poison の扱いがよく分からなくて tokio::sync::Mutex を使っているけど大げさな気がする。 crates…

bouzuya/cloud-storage-signature にバージョン別のテストを追加

bouzuya/cloud-storage-signature 。 この crate にも CHANGELOG tests を適用しはじめた。 CHANGELOG のようにバージョンごとに公開 api の変更をテストコードから読み取れるようにする。機能ごとではなくバージョンごとになっている点が特徴。 use_sign_bl…

serde_test を試せず

dependabot 対応。たまには何か別のこともと思って crates:serde_test を試そうとしたけど data format (Serializer / Deserializer) のテストのためのものではなく data structure (Serialize / Deserialize) のテストのためのものっぽかった。 ブログの記…

胸がざわつく日

なんだか胸がざわつく日。特に何かがあるわけでもないけど落ち着かない。微妙にキャパオーバーしているのだと思う。 今日のコミット。 cloud-storage-signature 2 commits Add crate::signed_url mod Hide html_form_data::ErrorKind

bouzuya/cloud-storage-signature v0.5.0 をつくった

bouzuya/cloud-storage-signature v0.5.0 をつくった。不要なコードの削除とエラーハンドリングを改善した。 一応つくったけど、他の crate で十分そうならこの crate は放棄かな……。 今日のコミット。 cloud-storage-signature 15 commits Update example 0…

2024-W15 ふりかえり

2024-W15 をふりかえる。 2024-W15 の目標 とその記事 目標。 ☑ cloud-storage-signature の API を調整する 記事。 2024-04-13 MDS / 上の子の散髪と下の子のアレコレ 2024-04-12 Google Drive API で PDF を生成してみた 2024-04-11 dependabot 対応 / Mag…

MDS / 上の子の散髪と下の子のアレコレ

メタデータからの情報の取得を試している。 [bouzuya/rust-sandbox] に mds1 として追加した。 MDS は metadata server らしい。 https://google.aip.dev/auth/4115 で使われているものを持ってきた。 bouzuya/cloud-storage-signature の signBlob 対応の準…

Google Drive API で PDF を生成してみた

bouzuya/rust-sandbox の google-docs-pdf で Google Drive API を使って Google Docs から PDF を生成するのを試した。 https://developers.google.com/drive/api/reference/rest/v3/files/export を呼び出しただけ。 認証箇所には googleapis/google-cloud…

dependabot 対応 / Magic Trackpad 充電

週次の dependabot 対応。特に気になるものはない。そろそろ firestore 関連 crate は 1.x にしてしまっても良いかもしれない。 昨日のことだけど Magic Trackpad の充電をした。 2% だった。 前回は 2024-03-13 2% 、今回は 2024-04-10 2% 。だいたい 1 ヶ…

bouzuya/cloud-storage-signature 0.3.0 をつくった

bouzuya/cloud-storage-signature v0.3.0 をつくった。 昨日 (2024-04-09) つくった builder で HTML Form の全フィールドに対応した。 api を変えて HtmlFormData::builder().key("object-name").build() のような形で構築できるようにした。 次は HMAC 対…

bouzuya/cloud-storage-signature で builder を書いている

bouzuya/cloud-storage-signature に HTML Form の全 Field への対応を入れようとしている。いまの引数の構造体にフィールドを追加すると複雑になってしまうので、 Builder パターンを適用してみようとしている。 今日はとりあえず policy なしの場合に対応…

bouzuya/cloud-storage-signature 0.2.0 をつくった

bouzuya/cloud-storage-signature 0.2.0 をつくった。 HTML Form の指定に Content-Length と Content-Type を指定できるようにした。 https://cloud.google.com/storage/docs/xml-api/post-object-forms あとは↑を使った例を examples/ に追加した。 素朴に…

2024-W14 ふりかえり

2024-W14 をふりかえる。 2024-W14 の目標 とその記事 目標。 ☑ 転職して 1 年経ってどうかを書く ☑ 署名付き URL 用 crate を公開する 記事。 2024-04-06 転職から 1 年 / 親知らずを抜いた 2024-04-05 bouzuya/cloud-storage-signature v0.1.1 をつくった …

転職から 1 年 / 親知らずを抜いた

転職から 1 年が経った。振り返ってどうか。 なぜ転職したのか? 前職には、新規の自社サービスの開発をするという話で入った。コロナの影響もあって開発が停止し、他社の仕事をする状況が長く続いた。正式に自社サービスの開発の中止が決まり、開発部署が解…

bouzuya/cloud-storage-signature v0.1.1 をつくった / 東京・桜

bouuzya/cloud-storage-signature v0.1.1 をつくった。 昨日 (2024-04-04) 公開すると書いたので行動した。機能が不足しているし API 的にも怪しいのだけど、公開してから考える。 AtCoder をやめて浮いた時間をアプリやライブラリの開発と睡眠時間にあてて…

定例の dependabot 対応 / v4-sign 進捗

定例の dependabot への対応。特に気になるものはなさそう。 bouzuya/rust-examples の v4-sign 。 unwrap と expect を削減した。外部に struct を公開すべきか迷ったけど一旦削除する方針に変更した。 object_name に先頭の / はなしで進めることにした。 …

Google Cloud Storage の Policy Document の expiration の説明が間違っている

Google Cloud Storage の HTML フォームでのアップロードを試した。 https://cloud.google.com/storage/docs/xml-api/post-object-forms 先日の Policy Document を BASE64 エンコードしたものを Service Account の private_key で署名にして、その署名のほ…

体調が悪い

体調が悪いので早く寝る。 https://cloud.google.com/storage/docs/authentication/signatures#structure BASE64 エンコードされた Policy Document からも署名をつくれることに気づいた。 試せていない。 過剰なコードになっている。 今日のコミット。 rust…

Policy Document の serde 実装 / 入園式

bouzuya/rust-examples の v4-sign に https://cloud.google.com/storage/docs/authentication/signatures#policy-document の Policy document のための構造体を定義してみた。 serde::Deserialize serde::Serialize を手動で実装した。 実装したはいいけど…

2024-W13 ふりかえり

2024-W13 をふりかえる。 2024-W13 の目標 とその記事 目標。 ☑ AtCoder の過去問題を解くのをやめる 記事。 2024-03-30 紙パックの側面に迷路を印刷するのはやめてほしい 2024-03-29 clippy::format_collect 2024-03-28 たくさん食べている 2024-03-27 Fire…

紙パックの側面に迷路を印刷するのはやめてほしい

森永のマミーの紙パックの側面に迷路が印刷されていた。これを考えた奴は、子どもが開封済みの紙パックを傾けて……という状況を想像できなかったんだろうか。 今日のコミット。 rust-examples 19 commits v4-sign: Extract signed_url mod v4-sign: Extract e…

clippy::format_collect

署名付き URL の続きを進める過程で、 clippy の警告を受けたのでメモ。 signature .into_iter() .map(|b| format!("{:02x}", b)) .collect::<String>() と書いたところ↓のように警告を受けた。 use of `format!` to build up a string from an iterator this can be</string>…

たくさん食べている

たくさん食べている。健康診断でやせすぎとされてから朝は食パンを 2 枚、昼はご飯を 1 合食べている。体重がじわっと増えている。 署名付き URL の続き。 credential_scope の / がどこで escape されているのかよくわからない。 今日のコミット。 rust-exa…

Firestore API への find_nearest 追加に伴う破壊的変更 / とんかつはおいしい

Play ストアから bbna が削除されてしまった。メールでああせい、こうせいと指示が来ていたけど、だらだら対応せずに居たら削除されてしまった。あとすこしでストア公開できそうなところまでは作業していたんだけどなあ。仕方ない。いまは優先できないので後…

署名付き URL の続き

署名付き URL 生成の続き。 crates:http の Request を使おうとしたのだけど query の操作がうまくできないので別途 crates:url を使う。確かに HTTP リクエストの URI の処理にはクエリパラーメーターは要らない……か。 今日のコミット。 rust-examples 2 co…