Webエンジニアの日常とリーグオブレジェンド

Webエンジニアとして働いている猫のブログ。EmacsとMySQLとリーグオブレジェンド(LoL)が好物。主に技術的な記事かLoLの記事を書く。

開発

Vagrant で C:/HashiCorp/Vagrant/embedded/mingw64/lib/ruby/2.4.0/json/common.rb:156:in `parse': 751: unexpected token at '' (JSON::ParserError)

vagrant up などでエラー D:/HashiCorp/Vagrant/embedded/mingw64/lib/ruby/2.4.0/json/common.rb:156:in `parse': 751: unexpected token at '' (JSON::ParserError) from D:/HashiCorp/Vagrant/embedded/mingw64/lib/ruby/2.4.0/json/common.rb:156:in `pa…

とりあえず TypeScript を動かすまで

前提 npm init npm install typescript index.ts を用意 コンパイル 動かす 前提 node, npm はインストール済み npm init npm init を叩いて適当に package.json を作成する。 npm install typescript npm install typescript 以下が package.json に追記さ…

PHP Laravel 標準の AuthenticatesUsers によるログインの処理を見てみる

環境 はじめに AuthenticatesUsers::login の中でやっていること validateLogin hasTooManyLoginAttempts まわり ThrottlesLogins::hasTooManyLoginAttempts attemptLogin それ以降の処理 環境 PHP 7.3 Laravel 5.8 はじめに Laravel では標準で認証の機能が…

PHP, Laravelで開発する時に役に立ったページ

はじめに 個人的に役に立ったページです 執筆時のLaravelの最新版は 5.8 です 基本は公式ドキュメントが大事 随時更新していきます Homestead Laravel Homestead 5.8 Laravel HomesteadでPHP(Laravel)アプリケーションが動作しなくなった時の対処法 Model, M…

【AWS IAM】AWS EC2 から CodeCommit のコードを clone できるようにするまで【CloudFormation】

はじめに git cloneのために何をする必要があるか AWS IAMとは IAM ロールとは EC2からCodeCommitのcloneを行いたい場合 CloudFormationで表現する git config はじめに CodeCommit にpushされているコードを AWS EC2 にデプロイしたい。 ただし、CodeDeploy…

【PHP】LaravelでServiceProviderでInterfaceに実装を注入したりstringを注入する方法【DI】

Interfaceを利用する意義 Laravelでどうやって注入するの? サービスプロバイダとは register メソッドでDIの設定を書く Interfaceへの実装注入以外の用途でも使える まとめ Interfaceを利用する意義 LaravelはDIを勝手にいい感じにしてくれます。例えばこう…

Macにnpmをインストールする方法 in 令和(2019年)

僕が考える最強の「Macにnpmをインストールする方法」in 2019 環境 nodebrew nodebrewでnodeを入れる npmを入れる 環境 macOS Mojave Homebrewはインストール済みである前提 nodebrew npmを動かすためにはnodeを入れなければ入れないのだが、簡単にnodeのバ…

はてなブログでPHPのコードを書いたときのシンタックスハイライトについて

シンタックスハイライト はてなブログにはシンタックスハイライト(見やすいようにプログラムのコードに色をつけてくれる機能)がある。 シンタックスハイライトなし

GitHubのレビュー支援ツールであるJasperを使う

導入方法 Jasperのダウンロード GitHub Token の設定 プルリクエストを監視する設定 高度な設定 使い方 GitHubでレビューする際に、レビューが出された際にコメントはするものの、それからコメントに返信があったり、コメントを受けてレビューが更新されたり…

Vagrantを使ってPHP Laravel開発(PHP 7.3, Laravel 5.8 macOS)

はじめに PHPのWebフレームワークといえばLaravelである。今PHPでWebアプリケーションを開発するならLaravelを使っておけば間違い無い。 LaravelにはHomesteadという開発環境が用意されていて、これを使えばすぐにWebアプリを作成できる。 環境 今回はMacで…

FeedlyでGitHubのリリースを追ってみる

はじめに Feedly Feedlyに登録 GitHubのRSS まとめ はじめに 僕自身RSSリーダーというのは使ったことがありませんでした。はてなRSSリーダー、ライブドアリーダー(ライブドワンゴリーダー)など、様々なRSSサービスが終了してきたことから、RSS はもう古い…

OpenAPI Specification で Response の object の Key を固定値ではなくて可変にしたい場合(ハッシュを返したい場合)

はじめに Dictionary, ハッシュマップ, 連想配列 additionalProperty とは additionalProperty を利用してDictionaryを書く まとめ はじめに OpenAPのドキュメントの以下のページの訳的なブログです。 Dictionaries, Hashmaps, Associative Arrays | Swagger…

【PHP】Mockeryでクラスとインタフェースを継承したクラスをモックしたり、複数のインタフェースを実装したクラスをモックする

はじめに PHPのGuzzleHttp *1 を利用し、以下のようなコードを書いた。 guzzleClient は コンストラクタDIなどを利用して // $this->guzzleClinet = new \GuzzleHttp\Client(); を差し込むようにする $response = $this->guzzleClient->post($url); } catch …

MacでHomebrewを使っていて、コマンドラインから叩くphpのバージョンがなんかおかしくなった場合の対処

概要 ある日 composer install するとこんな警告が出た phpunit/phpunit 5.7.21 requires php ^5.6 || ^7.0 -> your PHP version (5.5.20) does not satisfy that requirement. phpunit 5.7.21 を利用するには php5.6 以上または php7.0 以上が必要だが、あ…

libprotoc 3.0.0 から libprotoc 3.3.2 にアップデートしたらコンパイル時の namespace 指定が効かなくなって GPBMetadata が生成されるようになった

状況 PHPで書かれたプロジェクトで protocol buffer を利用していた。最初は libprotoc 3.0.0 を使用していたが、 これを 3.3.2 にバージョンアップした瞬間、 コンパイルオプションの namespace が効かなくなり、3.0.0 とは異なる成果物が生成されるように…