emolog

脳内メモです。

Flutter/Flutter.h' file not found のがiOSビルド時に頻発するときの対応

f:id:ababababa0222:20210312000009j:plain

問題

  • ビルドしようとうすると以下のエラーが出る。
  • Flutter/Flutter.h' file not found
al error: 'Flutter/Flutter.h' file not found
    #import <Flutter/Flutter.h>
            ^~~~~~~~~~~~~~~~~~~
    1 error generated.
    Command CompileSwift failed with a nonzero exit code
    note: Using new build system
    note: Building targets in parallel
    note: Planning build

対応

rm ios/Flutter/Flutter.podspec
flutter clean

Flutterのローカル開発で、APIリクエストがSocketExceptionと怒られたときの対応

f:id:ababababa0222:20210312000009j:plain

事象

  • APIリクエストには retrofit を使用している -ローカル環境に対してつないでいる、Andoridのエミュレーター
  • リクエスト時に、SocketException: OS Error: Connection refused, errno = 111, address = localhost, port = 37922 みたいなエラーになる
  • ローカルをcurlするとレスポンスが問題なく返ってくる

pub.dev

I/flutter (17987): ╔╣ Request ║ GET 
I/flutter (17987): ║  http://localhost:3000/api/v1/rooms/1
I/flutter (17987): ╚══════════════════════════════════════════════════════════════════════════════════════════
I/flutter (17987): 
I/flutter (17987): ╔╣ DioError ║ DioErrorType.DEFAULT
I/flutter (17987): ║  SocketException: OS Error: Connection refused, errno = 111, address = localhost, port = 37922
I/flutter (17987): ╚══════════════════════════════════════════════════════════════════════════════════════════

調査

stackoverflow.com

you're running the server locally and using the Android emulator, then your server endpoint should be 10.0.2.2:8000 instead of localhost:8000 as AVD uses 10.0.2.2 as an alias to your host loopback interface (i.e) localhost

対応

# 変更前
@RestApi(baseUrl: "http://localhost:3000/api/v1/")
# 変更後
@RestApi(baseUrl: "http://10.0.2.2:3000/api/v1/")

にしたら行けた。謎。 今度原因を調べる。

VScodeでプロジェクト内の複数ファイルを一括置換する

f:id:ababababa0222:20210312000009j:plain

盛大にtypoしていたので、一括置換する。

f:id:ababababa0222:20210315160248p:plain

macだと Command + shift + H でいけるっぽい

f:id:ababababa0222:20210315160337p:plain

f:id:ababababa0222:20210315160355p:plain

良い子は一括置換するときは、変なファイルを変更していないか / テストがちゃん書いてあるかをチェックしような。

日報を作るスクリプトを作った

f:id:ababababa0222:20210312000123j:plain

日報メモを書いているのだが、新規ファイルを作成するのがだるかったのでメモ

やってくれること

  • date.mdのファイルを作ってくれる
  • テンプレートを入れておいてくれる

以下スクリプト

require 'date'
require 'fileutils'

date = Date.today.to_s
file_name = "#{date}.md"
content = "## #{file_name}\n## memo"

File.open(file_name, mode = "w"){|f|
  f.write(content)
}
$ ruby template.rb

こんな感じで日時のファイルを作成してくれる。

f:id:ababababa0222:20210315113237p:plain

メモ

毎日やることは少しでも自動化していきたい。

はてぶのコードハイライトの色を変える

kerotaa.hateblo.jp

を参考に

# スニペットのカラーを変更
.entry-content pre.code {
    background-color: #002B36;
    color: #E0E2E4;
}
.synSpecial { color: #DC322F }
.synType { color: #B58900 }
.synComment { color: #7D8C93 }
.synPreProc { color: #B58900 }
.synIdentifier { color: #268BD2 }
.synConstant { color: #2AA198 }
.synStatement { color: #B58900 }
# フォントのサイズを変更
.entry-content { font-size: 15px }

にした。

【rails】データ移行を伴わないカラム名の変更をしたい

f:id:ababababa0222:20210308172835p:plain

やりたかったこと

  • 部屋テーブルに紐づくuser_idを、作成したユーザだとわかるようにowner_user_idに変更したい
    • データ移行は伴わない
  • 変更するカラム名は、テーブル名とことなるもの

やったこと

class ChangeUserToOwenerUser < ActiveRecord::Migration[6.0]
  def change
    remove_reference :rooms, :user, index: true
    add_reference :rooms, :owner_user, foreign_key: { to_table: :users }, after: :id, null: false
  end
end