Your version of goimports is too old and doesn't support vendoring. Please update goimports!
Go 初心者です。
思うところあって、 Go を試そうとしていました。随分前に emacs で Go の環境を整えてましたが、久し振りに go-mode にすると以下のエラーが出ました。
Your version of goimports is too old and doesn't support vendoring. Please update goimports! gofmt errors: flag provided but not defined: -srcdir usage: goimports [flags] [path ...] -d display diffs instead of rewriting files -e report all errors (not just the first 10 on different lines) -l list files whose formatting differs from goimport's -w write result to (source) file instead of stdout
goimports のアップデートが必要とのことでしたので、 go get しました。
$ go get golang.org/x/tools/cmd/goimports
『Teem Geek』読んだ
結構前に買った本ではあるが,思うところあって読みかえした.以下,要約.あくまでも,このように理解するというものなので,はずしている部分あると思う.
1.天才プログラマの神話
いかに優れた人(プログラマ)であっても全てを一人でできない.チームが大切だ. そのため,一人隠れて作業をするのではなく,オープンな状態で作業を進め,他者とうまくやることが大切だ.
2.素晴しいチーム文化を作る
エンジニアリングチームにおける文化とは繁殖した菌.改善に対してオープンだが,害をあたえる急激な変化に対しては防御的.
3.船にはキャプテンが必要
マネージャーはメンバーを信頼するリーダーであるべき.マネージャーは謙虚・尊敬・信頼の雰囲気づくりをする.
4.有害な人物に対処する
特定の人ではなく,有害な振舞を排除する.
5.組織的操作の技法
うまく機能している組織は失敗を恐れず,チャレンジできる.が,現実そううまくいかない.組織に対して継続してはたらきかける必要がある.
6.ユーザも人間
ユーザを分析する.一般に使いやすいソフトウェアは対象のユーザの技術レベルを低く想定している.
MySQL で実行されるログを確認する general_log の設定方法
OR Mapper などでクエリを発行するとき、実際どのようなクエリが生成されているのかわからないです。 またアプリケーションからクエリを呼ぶときに、意図した変数をわたせているかも確認もできます(もちろんテストも書くべきですが)。
そんなとき、my.cnf
の [mysqld] に次の設定をすれば、ログファイルからクエリの内容を確認できます。
general_log=1 general_log_file=/usr/local/var/log/mysql/query.log
上の設定の後、MySQLの再起動で/usr/local/var/log/mysql/query.log
で保管期間1日でログ出力されるようになります。
なお、設定したままにするとログファイルが出力されっぱなしになって、ストレージを圧迫することになり兼ねませんので、確認を終えたらコメントアウトしておくのが無難かと思います。
OSX で PostgreSQL の初期設定
先日、 突然 Standard user に降格されるという事件があったので、 OS のクリーンインストールを行いました。
パッケージのインストールは Ansible + Homebrew でやったのですが、PostgreSQL の初期設定の手順は手動で行ったのでメモとして残しておきます(いずれこれも自動化したい。。。)。
環境をば。
$ uname -mprsv Darwin 15.6.0 Darwin Kernel Version 15.6.0: Mon Aug 29 20:21:34 PDT 2016; root:xnu-3248.60.11~1/RELEASE_X86_64 x86_64 i386 $ brew --version Homebrew 0.9.9 (git revision 95863; last commit 2016-09-07) Homebrew/homebrew-core (git revision 24d3; last commit 2016-09-08) $ postgres --version postgres (PostgreSQL) 9.5.4
まず、手動で Homebrew で PostgreSQL をいれるときは多分こんな感じだと思います。
$ brew search postgresql $ brew install postgresql
続いて DB の初期化と起動。なお、initdb
したときに、/usr/local/var/postgres
が既に存在してるヨ。削除するか別のディレクトリ指定してネ。と言われたのでrm -rf /usr/local/var/postgres
してから初期化した。
$ initdb /usr/local/var/postgres -E utf8 $ pg_ctl -D /usr/local/var/postgres -l logfile start
psql -l
で DB の一覧が表示されれば OK。
次に、Role と DB の作成。
Role は postgres
という名称で、Superuser, Login の権限を付けます。\du
で Role の一覧が確認できます。
# create role postgres with superuser login password 'postgres';
DB は sample_database
という名称で Owner を postgres
に。
# create database sample_database owner postgres;
なお、DB と Role の削除は以下のコマンドで。postgres
はsample_database
の Owner なので先に Role を削除しようとすると怒られる。
# drop database sample_database; # drop role postgres;
以上。
user is not in the sudoers file. This incident will be reported. [unsolved]
Ansible でローカルの環境をいじってたら、突然sudo
できなくなりました。
$ sudo su - Password: user is not in the sudoers file. This incident will be reported.
原因・対処法はあまり調べられていないですが、再インストールするしかなさそうです。
ERROR: No query specified
[mysql] mysql> select * from user\G; ... ERROR: No query specified
\G;
がダメ。\G
までがひとつの文とみられる。
[mysql] mysql> ; ERROR: No query specified