2023-01-01から1年間の記事一覧
Android Studio から build.gradle (app レベル) の依存関係を更新した時、Android Studio から『Syntax highlighting has been temporarily turned off』と言われ、補完等が一切効かなくなりました。 今回はその解消方法についてメモしておきます。 環境 An…
シェルの上でよく遊ぶ方であれば、パイプ | は非常にお世話になっているかと思います。 今回はそんなパイプについて、どのようなシステムコールが呼ばれているかを追うことで理解を深めてみました。 [目次] - まとめ - 環境 - pipe status の復習 - システム…
突然ですがみなさん、自動化しているでしょうか? 自動化するときに悩むのが、対話型 CLI に代表されるインタラクティブなツールの存在だと思います。 個人的には、自動化もできないし打ち間違いも発生するしで、対話型 CLI はエンジニアの使うツールとして…
go 1.7 で追加された Context には『key, value 形式による情報の伝搬』と『Goroutine の適切なキャンセル』の主に2つの役割があります。 後者の『Goroutine の適切なキャンセル』が便利で、公式ブログでも並行処理パターンとして紹介されているように、各ラ…
VSCode の terminal で go install しようとしたところ、no such tool と言われました。 $ go install github.com/bufbuild/connect-go/cmd/protoc-gen-connect-go@latest go: no such tool "compile" go: no such tool "compile" go: no such tool "compile…
結論としてはタイトルの通り『Postman でパラメーターは URL エンコードされない』っていうことなんですが、これに気づかず時間を無駄にしてしまったため共有させてください。 Postman のバージョン m1 mac で以下のバージョンのデスクトップアプリを使って…
今回は、よくあるチャットメッセージのような吹き出しを作成したので、その方法を簡単に紹介します。 より一般には Text などの compose 関数を、名前のついてない自由な形に変形させることが目標です。 環境 compose_ui_version = '1.4.0-beta01' 作成方法 …
minio の詳しい説明は公式に頼りたいところですが、minio とは s3 と互換性のある object storage です(object storage とは)。 今回はこの『s3 と互換性のある』って部分を少し深ぼって、golang の sdk から s3 にアクセスする既存コードを使い、ローカル…
前回は GraphQL を Postman から叩いてみました。 koko206.hatenablog.com 今回はその続編として、Android から GitHub の GraphQL API を叩いてみようと思います。 (該当リポジトリ) Apollo とは Apollo は GraphQL API 用のライブラリで、React, Kotlin,…
GraphQL とは 現在主流の REST 設計では、アプリが複雑になるにつれ複数のエンドポイントが用意され、場合によっては1画面表示するのに複数の API を叩く必要があったりします。 これを解決するため、GraphQL はクライアントが必要なデータのみを単一のリク…
OAuth の連携画面を Jetpack Compose の Webview で表示していて、ログイン後にリダイレクトされないことがありました。 次のように javascript を有効にしてあげることで解決しました。 (リダイレクトに javascript が使われることが多々あるようです。) …
いつもやり方がわからなくなるので、備忘録として残しておきます。 やりたいこと 同じローカルマシンに立てたサーバーに、特定のパスを reverse proxy したい。 例: <base_url>/status にアクセスが来たとき、localhost:3000 に立てたサーバーに reverse proxy する。 </base_url>…
Logicool のマウスを Logi Options のアプリとともに使っていたのですが、VSCode での戻る・進むボタンが機能しない問題が発生しました。 windows では機能するのにな〜とか思って VSCode の設定とかいろいろ探してたのですが、最終的には GitHub のこちらの…
coil.compose.AsyncImage を使っている時に、正常に形が clip されない?と勘違いしてしまったことがありました。 (Image も同様でした。) 結論からいうと、AsyncImage, Image などの clip したい要素を、そのさらに外から fullScreen などの Column 等で…
Compose for iOS は KotlinConf23 で発表されました(2023/04/19 現在 α 版)。 KMM において UI コードを共通化する大本命でもあるため注目度は高かったと思いますが、今回ついに公式から説明があったため触ってみました!。 [目次] 触ってみる 前提条件 実…
kmm のセットアップ時、iOS をビルドしようとしたらタイトルのエラーが発生しました。 CoreSimulator.framework was changed while the process was running. This is not a supported configuration and can occur if Xcode.app was updated while the proc…
kmm のセットアップ時、kdoctor を叩いたらタイトルのエラーが発生しました。 ❯ kdoctor Environment diagnose (to see all details, use -v option): ─╯ [✓] Operation System [✓] Java [✓] Android Studio [✖] Xcode ✖ Xcode requires to perform the Firs…
apt update しても解決しない場合、デフォルトのリポジトリに graphviz が存在しないことが考えられます。 ubuntu のリポジトリとしては main, restricted, universe, multiverse がありますが、ここではなんとなく universe を追加してみます。 universe は…
Go は Makefile との親和性が高いみたく、ちょっと使ってみたので今回はその個人的な紹介です。 どの Go の本にも書いてあるので、gopher なら何かしらみんな使ってるものと思ってます。 目次 Makefile って何よ by Chat-GPT by 詳細 Go 言語 web アプリケー…
変数の有無で処理を変える 以下のように設定します。 if-test: ## ifeq ($(name),) ## 引数がない時 @echo Hello 名無さん else ## 引数がある時 @echo Hello $(name) endif 引数がある時とない時で処理が変わります。 # 引数がない時 $ make if-test Hello …
以下で紹介していることは基本は psql のオプションになります。 docker compose で立ち上げたコンテナに対して内部の DB に入るには以下のようにできます。 # postgresql: コンテナ名 # root: ユーザー名 # postgresql: 接続したい DB 名 docker compose ex…
最近は ChatGPT と一番会話をしてる気がします。。。 今回はそんな GhatGPT さんに Go の API サーバーの記述をお願いしたら、思ったより面白いことになったのでその紹介です。 (生成いただいた内容は github においてあります。) TOC やりとり API サーバ…
個人で勉強のために datadog を入れてみてラズパイで動かしているのですが、CPU 等を監視するために datadog-agent が 15 秒おきに /server-status?auto へアクセスを行なっているようです。 気づい時には 3 万 4000 ほど /server-status?auto へのログが da…
TOC なぜ Go 言語で CLI ツールを作るのか 作り方 サブコマンドを取らない場合 サブコマンドを取る場合 cobra の使用例 urfave/cli 実際にやってみる setup 初期化 サブコマンドの追加 注意点 なぜ Go 言語で CLI ツールを作るのか 以下の 4 点がぱっと思い…
TOC 目標 結論 解説 多階層を扱う jq で時刻を扱う 文字列操作 メモ 疑問 おまけ 目標 ↓ の 1 つ目の json を 2 つ目の json のように変換することです。 .*_timestamp の key を持った部分をターゲットとし、key から _timestamp の suffix を削除、value …
前提 一度は情報を読み込めている tag プッシュしたものを反映させたい 方法 push したタグに対応する ↓ のリンクを開く https://pkg.go.dev/github.com/{user_name}/{repository_name}@{tag_version} {} には以下の情報を入れてください。 user_name: 個人…
はじめに これらは 2023/1/16 現在の情報であり、GitHub の仕様変更によって将来変更を受ける可能性があります。 どんなエラーが出るか 権限不足でコミット等できなかった場合は、以下のようなエラーコードが表示されます(例)。 Invalid status code など…