PCS開発チーム

PCS開発チーム

Laravel専用パッケージのcomposer.json

requireにlaravel/frameworkは指定しない。Laravel専用な時点でlaravel/frameworkのクラスはすべて存在しているので指定する意味がない。
代わりにilluminateで個別に指定するけどこれも「対応するLaravelバージョンの制限」以外の意味はないのでilluminate/supportだけで十分。illuminate/supportを使うのはIlluminate\Support\ServiceProviderクラスを含むからだけど今はもうただのパッケージ開発者の慣習。

パッケージ開発時にlaravel/frameworkのクラスが必要な場合はorchestra/testbenchを使う。

  "require": {
    "php": "^8.1",
    "illuminate/support": "^10.0||^11.0"
  },
  "require-dev": {
    "orchestra/testbench": "^8.0||^9.0"
  },
  "extra": {
    "laravel": {
      "providers": [
        "My\\Package\\MyServiceProvider"
      ]
    }
  },

https://stackoverflow.com/questions/79059645/laravel-package-development-need-to-extend-the-formrequest-class-but-dont-wa