質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Tera Term

Tera Termは、TeraTerm Projectが開発する国産のWindows向けターミナルソフト。telnetプロトコルでのリモートホストへの接続やCOMポートのシリアル接続が可能で、マクロが利用できます。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

composer

Composerとは、PHP5.3.2以上で使用可能なパッケージ管理ツールです。指定ディレクトリ内だけでパッケージ管理します。

Q&A

解決済

1回答

2317閲覧

composer update 時のエラー

of_the_Europa

総合スコア66

Tera Term

Tera Termは、TeraTerm Projectが開発する国産のWindows向けターミナルソフト。telnetプロトコルでのリモートホストへの接続やCOMポートのシリアル接続が可能で、マクロが利用できます。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

composer

Composerとは、PHP5.3.2以上で使用可能なパッケージ管理ツールです。指定ディレクトリ内だけでパッケージ管理します。

0グッド

0クリップ

投稿2021/12/24 04:16

下記のサイトを参考にlaravel のアップグレードを実施しておりました。

5.8から8.xに段階的にアップグレードする

6から7へアップグレードしていた時に、このようなエラーが出てしまいました。

In QueryRecorder.php line 22: Argument 2 passed to Facade\Ignition\QueryRecorder\QueryRecorder::__constru ct() must be of the type bool, null given, called in vendor/facade/ignition/src/IgnitionServiceProvider.php on line 386

このQueryRecorder.php line 22の場所はこのようになっておりました。

class QueryRecorder { /** @var \Facade\Ignition\QueryRecorder\Query|[] */ protected $queries = []; /** @var \Illuminate\Contracts\Foundation\Application */ protected $app; /** @var bool */ private $reportBindings; /** @var int|null */ private $maxQueries; public function __construct(  //ここが22行目となります。 Application $app, bool $reportBindings = true, ?int $maxQueries = null ) { $this->app = $app; $this->reportBindings = $reportBindings; $this->maxQueries = $maxQueries; } public function register() { $this->app['events']->listen(QueryExecuted::class, [$this, 'record']); return $this; }

laravel6から7へのアップグレードする前に、エラーにも表記されている"facade/ignition"をcomposer.jsonにも依存パッケージとして更新(追記?)しております。

composer.jsonはlaravelの公式で掲載している通りの記述にしているかと思います。

composer.json

{ "name": "laravel/laravel", "type": "project", "description": "The Laravel Framework.", "keywords": [ "framework", "laravel" ], "license": "MIT", "require": { "php": "^7.1.3", "abraham/twitteroauth": "^3.1", "fabpot/goutte": "^4.0", "fideloper/proxy": "^4.0", "fruitcake/laravel-cors": "^2.0", "google/cloud-vision": "^1.5", "guzzlehttp/guzzle": "^7.4", "intervention/image": "^2.7", "laravel/framework": "^7.0", "laravel/tinker": "^2.0", "laravel/ui": "2.0" }, "require-dev": { "beyondcode/laravel-dump-server": "^1.0", "filp/whoops": "^2.0", "fzaninotto/faker": "^1.4", "mockery/mockery": "^1.0", "nunomaduro/collision": "^4.1", "phpunit/phpunit": "^8.5", "facade/ignition": "^2.0" }, "config": { "optimize-autoloader": true, "preferred-install": "dist", "sort-packages": true }, "extra": { "laravel": { "dont-discover": [] } }, "autoload": { "psr-4": { "App\": "app/" }, "classmap": [ "database/seeds", "database/factories" ] }, "autoload-dev": { "psr-4": { "Tests\": "tests/" } }, "minimum-stability": "dev", "prefer-stable": true, "scripts": { "post-autoload-dump": [ "Illuminate\Foundation\ComposerScripts::postAutoloadDump", "@php artisan package:discover --ansi" ], "post-root-package-install": [ "@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" ], "post-create-project-cmd": [ "@php artisan key:generate --ansi" ] } }

現在の環境です
windows10
Laravel Framework 6.20.40  → php artisanが使えないため、現在はこのバージョンを確認できません。
teraterm

すみません、この手のエラーを探したのですが見つけられなかったため、今回も質問させていただきました。
よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

まず最初に。

laravel6未満のfilp/whoopsに代わって、
laravel6以上ではfacade/ignitionになったので、

両方入れる必要はないんじゃないかな・・と思いました。
どちらも「エラー表示を見やすくするツール」なので、片方あれば十分なはず。。。

次に。

この「エラー表示を見やすくするツール」であるfacade/ignitionは、
require-devに含まれているものなので、システム全体の動きには影響しない。。。
なんなら、なくても大丈夫なヤツです。

facade/ignitionにエラー表示してもらおうと、
エラーを渡している元の部分の方が、根本的な問題なのでは?と思うので、
エラーメッセージを少し遡ってみてはどうでしょうか。。

いっそ、filp/whoopsfacade/ignitionも削除して、動作検証してみるのも手かもしれません。

(もし、filp/whoopsfacade/ignitionを両方削除して、エラーがなくなるのであれば、同じ機能のツールが競合して問題が発生していた。。という可能性もあるかも??)

以上、検証したわけではありませんので、あくまで想像の範囲ですが、
ご参考までに。。。

投稿2021/12/24 08:08

mix-peach

総合スコア1910

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

of_the_Europa

2021/12/24 09:06

ありがとうございます。 composer.jsonのfacade/ignitionの記述を削除してから composer update したところ、無事7にアップデートできました。サイトの表示や動きも今のところ問題ないようです。 filp/whoops と facade/ignition が同じエラーメッセージツールだということは、正直分かっておりませんでした。 根本的はエラーの原因は調べていないのですが、もう少し心に余裕ができてから再度検証してみたいと思いますm(__)m
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問