From e2b76dba9989b97ed73c9a5fa52333ed7e05c8d2 Mon Sep 17 00:00:00 2001 From: Your Name Date: Fri, 18 Sep 2026 18:14:25 +0930 Subject: [PATCH] larastan level 2 --- app/Http/Resources/StatusStateless.php | 3 + app/Models/AccountInterstitial.php | 5 + app/Models/Avatar.php | 3 + app/Models/GroupMember.php | 3 + app/Models/GroupReport.php | 3 + app/Models/MediaTag.php | 3 + app/Models/Newsroom.php | 3 + app/Models/Notification.php | 3 + app/Models/Profile.php | 3 + app/Models/ProfileMigration.php | 4 + app/Models/Status.php | 8 +- app/Models/StatusHashtag.php | 4 + app/Models/StoryItem.php | 2 + app/Models/User.php | 3 + app/Models/UserOidcMapping.php | 3 + phpstan-baseline.neon | 3499 ------------------------ phpstan.neon | 35 +- 17 files changed, 84 insertions(+), 3503 deletions(-) delete mode 100644 phpstan-baseline.neon diff --git a/app/Http/Resources/StatusStateless.php b/app/Http/Resources/StatusStateless.php index b2db5368a..7cb28eda5 100644 --- a/app/Http/Resources/StatusStateless.php +++ b/app/Http/Resources/StatusStateless.php @@ -16,6 +16,9 @@ use Illuminate\Contracts\Support\Arrayable; use Illuminate\Http\Request; use Illuminate\Http\Resources\Json\JsonResource; +/** + * @mixin \App\Models\Status + */ class StatusStateless extends JsonResource { /** diff --git a/app/Models/AccountInterstitial.php b/app/Models/AccountInterstitial.php index 3d431bce0..4100f608c 100644 --- a/app/Models/AccountInterstitial.php +++ b/app/Models/AccountInterstitial.php @@ -5,6 +5,11 @@ namespace App\Models; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo; +/** + * @property-read \App\Models\Status|null $status + * @property-read int $count aggregate/computed alias + * @property-read string $month_year aggregate/computed alias + */ class AccountInterstitial extends Model { public const JSON_MESSAGE = 'Please use web browser to proceed.'; diff --git a/app/Models/Avatar.php b/app/Models/Avatar.php index dd657c650..97d860907 100644 --- a/app/Models/Avatar.php +++ b/app/Models/Avatar.php @@ -5,6 +5,9 @@ namespace App\Models; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\SoftDeletes; +/** + * @property-read bool $recentlyCreated computed/dynamic attribute + */ class Avatar extends Model { use SoftDeletes; diff --git a/app/Models/GroupMember.php b/app/Models/GroupMember.php index e8e6bc325..213a0b29d 100644 --- a/app/Models/GroupMember.php +++ b/app/Models/GroupMember.php @@ -5,6 +5,9 @@ namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; +/** + * @property-read \App\Models\Group|null $group + */ class GroupMember extends Model { use HasFactory; diff --git a/app/Models/GroupReport.php b/app/Models/GroupReport.php index f816eb030..ea86ec2b2 100644 --- a/app/Models/GroupReport.php +++ b/app/Models/GroupReport.php @@ -5,6 +5,9 @@ namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; +/** + * @property-read int $total aggregate/computed alias + */ class GroupReport extends Model { use HasFactory; diff --git a/app/Models/MediaTag.php b/app/Models/MediaTag.php index 9b3aa0701..52b6b23ad 100644 --- a/app/Models/MediaTag.php +++ b/app/Models/MediaTag.php @@ -4,6 +4,9 @@ namespace App\Models; use Illuminate\Database\Eloquent\Model; +/** + * @property-read \App\Models\Status|null $status + */ class MediaTag extends Model { protected $guarded = []; diff --git a/app/Models/Newsroom.php b/app/Models/Newsroom.php index ff38ab994..2a7323c2a 100644 --- a/app/Models/Newsroom.php +++ b/app/Models/Newsroom.php @@ -4,6 +4,9 @@ namespace App\Models; use Illuminate\Database\Eloquent\Model; +/** + * @property bool $published computed/dynamic attribute + */ class Newsroom extends Model { protected $table = 'newsroom'; diff --git a/app/Models/Notification.php b/app/Models/Notification.php index f938820b4..0990741ce 100644 --- a/app/Models/Notification.php +++ b/app/Models/Notification.php @@ -6,6 +6,9 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\MorphTo; use Illuminate\Database\Eloquent\SoftDeletes; +/** + * @property-read \App\Models\Profile|null $actor + */ class Notification extends Model { use SoftDeletes; diff --git a/app/Models/Profile.php b/app/Models/Profile.php index 58e7285bf..cf19bb948 100644 --- a/app/Models/Profile.php +++ b/app/Models/Profile.php @@ -34,6 +34,9 @@ use Illuminate\Support\Facades\Storage; * @property Carbon|null $deleted_at * @property-read User|null $user * @property-read Avatar $avatar + * @property-read \Illuminate\Database\Eloquent\Collection $aliases + * @property-read bool $is_followed computed/dynamic attribute + * @property-read int $profile_id joined-column alias (followers.profile_id) */ class Profile extends Model { diff --git a/app/Models/ProfileMigration.php b/app/Models/ProfileMigration.php index 68acad913..870a8782f 100644 --- a/app/Models/ProfileMigration.php +++ b/app/Models/ProfileMigration.php @@ -5,6 +5,10 @@ namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; +/** + * @property-read \App\Models\Profile|null $profile + * @property-read \App\Models\Profile|null $target + */ class ProfileMigration extends Model { use HasFactory; diff --git a/app/Models/Status.php b/app/Models/Status.php index b41f1c4f4..46bf4db49 100644 --- a/app/Models/Status.php +++ b/app/Models/Status.php @@ -35,14 +35,18 @@ use Illuminate\Support\Str; * @property int $reblogs_count * @property int $reply_count * @property bool $local - * @property string|null $place + * @property int|null $place_id + * @property-read \App\Models\Place|null $place * @property Carbon|null $created_at * @property Carbon|null $updated_at * @property Carbon|null $deleted_at * @property Carbon|null $edited_at * @property-read Profile $profile * @property-read Collection $media - * @property-read Collection $mentions + * @property-read Collection $mentions + * @property-read \App\Models\Poll|null $poll + * @property-read int $count aggregate/computed alias + * @property-read int $pc aggregate/computed alias */ class Status extends Model { diff --git a/app/Models/StatusHashtag.php b/app/Models/StatusHashtag.php index e9a9a9796..60e88345b 100644 --- a/app/Models/StatusHashtag.php +++ b/app/Models/StatusHashtag.php @@ -6,6 +6,10 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\HasManyThrough; +/** + * @property-read int $count aggregate/computed alias + * @property-read int $total aggregate/computed alias + */ class StatusHashtag extends Model { public $fillable = [ diff --git a/app/Models/StoryItem.php b/app/Models/StoryItem.php index 514eabe9a..7e434ac37 100644 --- a/app/Models/StoryItem.php +++ b/app/Models/StoryItem.php @@ -14,6 +14,8 @@ use Pixelfed\Snowflake\HasSnowflakePrimary; * @property Carbon|null $expires_at * @property Carbon|null $created_at * @property Carbon|null $updated_at + * @property string $type + * @property-read \App\Models\Story|null $story */ class StoryItem extends Model { diff --git a/app/Models/User.php b/app/Models/User.php index 11317d09e..ce7fd5fd4 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -13,6 +13,9 @@ use Laravel\Passport\Contracts\OAuthenticatable; use Laravel\Passport\HasApiTokens; use NotificationChannels\WebPush\HasPushSubscriptions; +/** + * @property-read \App\Models\UserSetting|null $settings + */ class User extends Authenticatable implements OAuthenticatable { use HasApiTokens, HasFactory, HasPushSubscriptions, Notifiable, SoftDeletes, UserRateLimit; diff --git a/app/Models/UserOidcMapping.php b/app/Models/UserOidcMapping.php index a9a7726b1..ee52ed9d3 100644 --- a/app/Models/UserOidcMapping.php +++ b/app/Models/UserOidcMapping.php @@ -5,6 +5,9 @@ namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; +/** + * @property-read \App\Models\User|null $user + */ class UserOidcMapping extends Model { use HasFactory; diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon deleted file mode 100644 index c80d3b9c3..000000000 --- a/phpstan-baseline.neon +++ /dev/null @@ -1,3499 +0,0 @@ -parameters: - ignoreErrors: - - - message: '#^Strict comparison using \=\=\= between non\-empty\-string and '''' will always evaluate to false\.$#' - identifier: identical.alwaysFalse - count: 1 - path: app/Auth/AppRegisterGrant.php - - - - message: '#^Parameter \#2 \$rows of function Laravel\\Prompts\\table expects array\\>\|Illuminate\\Support\\Collection\\>\|null, array\{array\{''ID'', int\}, array\{''Username'', string\|null\}, array\{''Email'', string\|null\}, array\{''Status'', ''Approved''\|''Awaiting Admin…''\|''Awaiting more info''\|''Closed''\|''Rejected''\|''Unknown''\}, array\{''Created At'', non\-falsy\-string\}, array\{''Updated At'', non\-falsy\-string\}\} given\.$#' - identifier: argument.type - count: 1 - path: app/Console/Commands/Admin/CuratedOnboardingCommand.php - - - - message: '#^Parameter \#2 \$rows of function Laravel\\Prompts\\table expects array\\>\|Illuminate\\Support\\Collection\\>\|null, array\{array\{int\<0, max\>, int\<0, max\>, int\<0, max\>, int\<0, max\>, int\<0, max\>\}\} given\.$#' - identifier: argument.type - count: 1 - path: app/Console/Commands/Admin/CuratedOnboardingCommand.php - - - - message: '#^Strict comparison using \=\=\= between int and ''4'' will always evaluate to false\.$#' - identifier: identical.alwaysFalse - count: 1 - path: app/Console/Commands/Admin/Unstable/MediaMoveStorageCloudToLocal.php - - - - message: '#^Right side of && is always true\.$#' - identifier: booleanAnd.rightAlwaysTrue - count: 1 - path: app/Console/Commands/Concerns/ManagesMediaStorageEnv.php - - - - message: '#^Access to an undefined property App\\Models\\Avatar\:\:\$thumb_path\.$#' - identifier: property.notFound - count: 5 - path: app/Console/Commands/Deprecated/AvatarDefaultMigration.php - - - - message: '#^Property App\\Models\\Media\:\:\$size \(int\<0, max\>\|null\) does not accept string\.$#' - identifier: assign.propertyType - count: 1 - path: app/Console/Commands/FixBugs/FetchMissingMediaMimeType.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Console/Commands/FixBugs/FixDuplicateProfiles.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$scope\.$#' - identifier: property.notFound - count: 1 - path: app/Console/Commands/FixBugs/FixHashtags.php - - - - message: '#^If condition is always true\.$#' - identifier: if.alwaysTrue - count: 1 - path: app/Console/Commands/FixBugs/FixMissingUserProfile.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 2 - path: app/Console/Commands/FixBugs/FixMissingUserProfile.php - - - - message: '#^Comparison operation "\>" between int\<1, max\> and 0 is always true\.$#' - identifier: greater.alwaysTrue - count: 1 - path: app/Console/Commands/FixBugs/FixUsernames.php - - - - message: '#^Right side of && is always true\.$#' - identifier: booleanAnd.rightAlwaysTrue - count: 1 - path: app/Console/Commands/Install/Installer.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereHashtagId\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Console/Commands/Internal/HashtagCachedCountUpdate.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Console/Commands/Internal/ImportRemoveDeletedAccounts.php - - - - message: '#^Call to an undefined static method Illuminate\\Database\\Eloquent\\Model\:\:withTrashed\(\)\.$#' - identifier: staticMethod.notFound - count: 1 - path: app/Console/Commands/Media/MediaFilterCleanup.php - - - - message: '#^Dead catch \- Throwable is never thrown in the try block\.$#' - identifier: catch.neverThrown - count: 1 - path: app/Console/Commands/Status/StatusProfile.php - - - - message: '#^Ternary operator condition is always true\.$#' - identifier: ternary.alwaysTrue - count: 1 - path: app/Console/Commands/Status/StatusProfile.php - - - - message: '#^Right side of && is always true\.$#' - identifier: booleanAnd.rightAlwaysTrue - count: 1 - path: app/Console/Commands/Status/StatusStatuses.php - - - - message: '#^Dead catch \- Throwable is never thrown in the try block\.$#' - identifier: catch.neverThrown - count: 1 - path: app/Console/Commands/Status/StatusUser.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Console/Commands/Status/StatusUser.php - - - - message: '#^Strict comparison using \!\=\= between list\{0\: non\-falsy\-string, 1\?\: non\-falsy\-string, 2\?\: non\-falsy\-string, 3\?\: non\-falsy\-string, 4\?\: ''2FA disabled''\|''2FA enabled \(login…''\} and array\{\} will always evaluate to true\.$#' - identifier: notIdentical.alwaysTrue - count: 1 - path: app/Console/Commands/Status/StatusUser.php - - - - message: '#^Instanceof between Throwable and Throwable will always evaluate to true\.$#' - identifier: instanceof.alwaysTrue - count: 1 - path: app/Console/Commands/User/UserAccountDelete.php - - - - message: '#^Offset ''algoName'' on array\{algo\: string\|null, algoName\: string, options\: array\\} on left side of \?\? always exists and is not nullable\.$#' - identifier: nullCoalesce.offset - count: 1 - path: app/Console/Commands/User/UserCheckPassword.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$status\.$#' - identifier: property.notFound - count: 1 - path: app/Console/Commands/User/UserDelete.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Console/Commands/User/UserDelete.php - - - - message: '#^Parameter \#2 \$options of function Laravel\\Prompts\\select expects array\\|Illuminate\\Support\\Collection\, Illuminate\\Support\\Collection\ given\.$#' - identifier: argument.type - count: 1 - path: app/Console/Commands/User/UserDelete.php - - - - message: '#^Parameter \#2 \$rows of function Laravel\\Prompts\\table expects array\\>\|Illuminate\\Support\\Collection\\>\|null, array\{array\{Username\: mixed, Statuses\: mixed, Followers\: mixed, Following\: mixed, Joined\: non\-falsy\-string\}\} given\.$#' - identifier: argument.type - count: 1 - path: app/Console/Commands/User/UserDelete.php - - - - message: '#^Property App\\Models\\User\:\:\$remember_token \(string\) does not accept null\.$#' - identifier: assign.propertyType - count: 1 - path: app/Console/Commands/User/UserSetPassword.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$status\.$#' - identifier: property.notFound - count: 1 - path: app/Console/Commands/User/UserUnsuspend.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$followers_count\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/AccountController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$following\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/AccountController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$following_count\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/AccountController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 4 - path: app/Http/Controllers/AccountController.php - - - - message: '#^Parameter \#2 \$blocked_id of static method App\\Services\\UserFilterService\:\:unblock\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/AccountController.php - - - - message: '#^Parameter \#2 \$muted_id of static method App\\Services\\UserFilterService\:\:unmute\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/AccountController.php - - - - message: '#^Expression on left side of \?\? is not nullable\.$#' - identifier: nullCoalesce.expr - count: 1 - path: app/Http/Controllers/Admin/AdminAutospamController.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Http/Controllers/Admin/AdminAutospamController.php - - - - message: '#^If condition is always true\.$#' - identifier: if.alwaysTrue - count: 1 - path: app/Http/Controllers/Admin/AdminDirectoryController.php - - - - message: '#^Ternary operator condition is always true\.$#' - identifier: ternary.alwaysTrue - count: 1 - path: app/Http/Controllers/Admin/AdminDirectoryController.php - - - - message: '#^Trait App\\Http\\Controllers\\Admin\\AdminGroupsController is used zero times and is not analysed\.$#' - identifier: trait.unused - count: 1 - path: app/Http/Controllers/Admin/AdminGroupsController.php - - - - message: '#^Loose comparison using \=\= between ''open'' and ''open'' will always evaluate to true\.$#' - identifier: equal.alwaysTrue - count: 1 - path: app/Http/Controllers/Admin/AdminReportController.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 2 - path: app/Http/Controllers/Admin/AdminReportController.php - - - - message: '#^Negated boolean expression is always true\.$#' - identifier: booleanNot.alwaysTrue - count: 1 - path: app/Http/Controllers/Admin/AdminReportController.php - - - - message: '#^Right side of && is always true\.$#' - identifier: booleanAnd.rightAlwaysTrue - count: 3 - path: app/Http/Controllers/Admin/AdminReportController.php - - - - message: '#^Call to function abort_unless\(\) with bool and 400 will always evaluate to true\.$#' - identifier: function.alreadyNarrowedType - count: 1 - path: app/Http/Controllers/Admin/AdminSettingsController.php - - - - message: '#^Right side of && is always true\.$#' - identifier: booleanAnd.rightAlwaysTrue - count: 2 - path: app/Http/Controllers/Admin/AdminSettingsController.php - - - - message: '#^Trait App\\Http\\Controllers\\Admin\\AdminSupportController is used zero times and is not analysed\.$#' - identifier: trait.unused - count: 1 - path: app/Http/Controllers/Admin/AdminSupportController.php - - - - message: '#^Access to an undefined property App\\Models\\AccountInterstitial\:\:\$count\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property App\\Models\\AccountInterstitial\:\:\$month_year\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property App\\Models\\AccountInterstitial\|Illuminate\\Database\\Eloquent\\Collection\<\(int\|string\), App\\Models\\AccountInterstitial\>\:\:\$status\.$#' - identifier: property.notFound - count: 3 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property App\\Models\\Contact\|Illuminate\\Database\\Eloquent\\Collection\<\(int\|string\), App\\Models\\Contact\>\:\:\$user\.$#' - identifier: property.notFound - count: 3 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property App\\Models\\Newsroom\:\:\$published\.$#' - identifier: property.notFound - count: 4 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property App\\Models\\Newsroom\|Illuminate\\Database\\Eloquent\\Collection\<\(int\|string\), App\\Models\\Newsroom\>\:\:\$published\.$#' - identifier: property.notFound - count: 4 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property App\\Models\\User\|Illuminate\\Database\\Eloquent\\Collection\<\(int\|string\), App\\Models\\User\>\:\:\$bio\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property App\\Models\\User\|Illuminate\\Database\\Eloquent\\Collection\<\(int\|string\), App\\Models\\User\>\:\:\$website\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$bio\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$delete_after\.$#' - identifier: property.notFound - count: 3 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$name\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$profile_id\.$#' - identifier: property.notFound - count: 14 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$status\.$#' - identifier: property.notFound - count: 3 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$username\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$website\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Call to an undefined method Illuminate\\Contracts\\Pagination\\CursorPaginator\:\:map\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereUserId\(\)\.$#' - identifier: method.notFound - count: 2 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Parameter \#1 \$array \(non\-empty\-list\\) of array_values is already a list, call has no effect\.$#' - identifier: arrayValues.list - count: 1 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 1 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Parameter \#1 \$view of function view expects view\-string\|null, string given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Property App\\Models\\Newsroom\:\:\$body \(string\|null\) does not accept bool\.$#' - identifier: assign.propertyType - count: 1 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Property App\\Models\\Newsroom\:\:\$category \(string\) does not accept bool\.$#' - identifier: assign.propertyType - count: 1 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Property App\\Models\\Newsroom\:\:\$summary \(string\|null\) does not accept bool\.$#' - identifier: assign.propertyType - count: 1 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Property App\\Models\\Newsroom\:\:\$title \(string\|null\) does not accept bool\.$#' - identifier: assign.propertyType - count: 1 - path: app/Http/Controllers/AdminController.php - - - - message: '#^Access to an undefined property App\\Models\\CuratedRegister\|Illuminate\\Database\\Eloquent\\Collection\<\(int\|string\), App\\Models\\CuratedRegister\>\:\:\$message\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/AdminCuratedRegisterController.php - - - - message: '#^Offset ''aid'' on array\{id\: int, action\: string, title\: string, message\: null, link\: null, timestamp\: Carbon\\Carbon\|null\} in isset\(\) does not exist\.$#' - identifier: isset.offset - count: 1 - path: app/Http/Controllers/AdminCuratedRegisterController.php - - - - message: '#^Parameter \#1 \.\.\.\$values of method Illuminate\\Support\\Collection\\>\:\:push\(\) expects array\{id\: int, action\: string, title\: string, message\: null, link\: null, timestamp\: Carbon\\Carbon\|null\}, array\{id\: int\<5, max\>, aid\: int, action\: string\|null, title\: ''Admin requested info''\|''User responded'', message\: string\|null, link\: mixed, timestamp\: Carbon\\Carbon\|null\} given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/AdminCuratedRegisterController.php - - - - message: '#^Unreachable statement \- code above always terminates\.$#' - identifier: deadCode.unreachable - count: 1 - path: app/Http/Controllers/AdminCuratedRegisterController.php - - - - message: '#^Expression on left side of \?\? is not nullable\.$#' - identifier: nullCoalesce.expr - count: 1 - path: app/Http/Controllers/AdminInviteController.php - - - - message: '#^Access to an undefined property App\\Models\\AccountInterstitial\|Illuminate\\Database\\Eloquent\\Collection\<\(int\|string\), App\\Models\\AccountInterstitial\>\:\:\$status\.$#' - identifier: property.notFound - count: 3 - path: app/Http/Controllers/Api/AdminApiController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$cw\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/AdminApiController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 4 - path: app/Http/Controllers/Api/AdminApiController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$is_admin\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/AdminApiController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$no_autolink\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/AdminApiController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$profile\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/AdminApiController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$profile_id\.$#' - identifier: property.notFound - count: 10 - path: app/Http/Controllers/Api/AdminApiController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$unlisted\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/AdminApiController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereFollowingId\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/Api/AdminApiController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereProfileId\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/Api/AdminApiController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereUserId\(\)\.$#' - identifier: method.notFound - count: 2 - path: app/Http/Controllers/Api/AdminApiController.php - - - - message: '#^Parameter \#1 \$user of job class App\\Jobs\\DeletePipeline\\DeleteAccountPipeline constructor expects App\\Models\\User in App\\Jobs\\DeletePipeline\\DeleteAccountPipeline\:\:dispatch\(\), Illuminate\\Database\\Eloquent\\Model\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Api/AdminApiController.php - - - - message: '#^Using nullsafe property access "\?\-\>is_admin" on left side of \?\? is unnecessary\. Use \-\> instead\.$#' - identifier: nullsafe.neverNull - count: 2 - path: app/Http/Controllers/Api/AdminApiController.php - - - - message: '#^Access to an undefined property App\\Models\\User\:\:\$settings\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$bio\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$cw\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$followers_count\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$following_count\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 24 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$is_private\.$#' - identifier: property.notFound - count: 4 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$is_suggestable\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$name\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$unlisted\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$user_id\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$username\.$#' - identifier: property.notFound - count: 3 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$website\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Access to an undefined property Laravel\\Passport\\Contracts\\ScopeAuthorizable\:\:\$client\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Call to an undefined method Illuminate\\Contracts\\Pagination\\CursorPaginator\:\:filter\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereFollowingId\(\)\.$#' - identifier: method.notFound - count: 2 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereProfileId\(\)\.$#' - identifier: method.notFound - count: 2 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^If condition is always true\.$#' - identifier: if.alwaysTrue - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Left side of && is always true\.$#' - identifier: booleanAnd.leftAlwaysTrue - count: 16 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Loose comparison using \!\= between int\<0, max\>\|false and \-1 will always evaluate to true\.$#' - identifier: notEqual.alwaysTrue - count: 10 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 2 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Negated boolean expression is always true\.$#' - identifier: booleanNot.alwaysTrue - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Offset ''accounts'' on array\{id\: mixed, unread\: false, accounts\: array\{mixed\}, last_status\: mixed\} in isset\(\) always exists and is not nullable\.$#' - identifier: isset.offset - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\> given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 14 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Parameter \#1 \$boolean of function abort_if expects bool, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 4 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Parameter \#1 \$boolean of function abort_unless expects bool, App\\Models\\Follower\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Parameter \#1 \$profile of job class App\\Jobs\\AvatarPipeline\\AvatarOptimize constructor expects App\\Models\\Profile in App\\Jobs\\AvatarPipeline\\AvatarOptimize\:\:dispatch\(\), Illuminate\\Database\\Eloquent\\Model\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Parameter \#2 \$blocked_id of static method App\\Services\\UserFilterService\:\:unblock\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Parameter \#2 \$muted_id of static method App\\Services\\UserFilterService\:\:unmute\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 8 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\> given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Right side of && is always true\.$#' - identifier: booleanAnd.rightAlwaysTrue - count: 1 - path: app/Http/Controllers/Api/ApiV1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$avatar\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/ApiV1Dot1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$cw\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/ApiV1Dot1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/ApiV1Dot1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$is_private\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/ApiV1Dot1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$unlisted\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/ApiV1Dot1Controller.php - - - - message: '#^Access to an undefined property Laravel\\Passport\\Contracts\\ScopeAuthorizable\:\:\$id\.$#' - identifier: property.notFound - count: 3 - path: app/Http/Controllers/Api/ApiV1Dot1Controller.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereEmail\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/Api/ApiV1Dot1Controller.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Http/Controllers/Api/ApiV1Dot1Controller.php - - - - message: '#^Parameter \#1 \$boolean of function abort_if expects bool, App\\Models\\User\|null given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/Api/ApiV1Dot1Controller.php - - - - message: '#^Parameter \#1 \$boolean of function abort_if expects bool, string\|null given\.$#' - identifier: argument.type - count: 4 - path: app/Http/Controllers/Api/ApiV1Dot1Controller.php - - - - message: '#^Using nullsafe property access "\?\-\>name" on left side of \?\? is unnecessary\. Use \-\> instead\.$#' - identifier: nullsafe.neverNull - count: 1 - path: app/Http/Controllers/Api/ApiV1Dot1Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/Api/ApiV2Controller.php - - - - message: '#^Left side of && is always true\.$#' - identifier: booleanAnd.leftAlwaysTrue - count: 1 - path: app/Http/Controllers/Api/ApiV2Controller.php - - - - message: '#^Loose comparison using \!\= between int\<0, max\>\|false and \-1 will always evaluate to true\.$#' - identifier: notEqual.alwaysTrue - count: 1 - path: app/Http/Controllers/Api/ApiV2Controller.php - - - - message: '#^Method App\\Http\\Controllers\\Api\\ApiV2Controller\:\:getDescendantsCursorPaginated\(\) is unused\.$#' - identifier: method.unused - count: 1 - path: app/Http/Controllers/Api/ApiV2Controller.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Api/ApiV2Controller.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$avatar\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Api/BaseApiController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/Api/BaseApiController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereProfileId\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/Api/BaseApiController.php - - - - message: '#^Parameter \#1 \$profile of job class App\\Jobs\\AvatarPipeline\\AvatarOptimize constructor expects App\\Models\\Profile in App\\Jobs\\AvatarPipeline\\AvatarOptimize\:\:dispatch\(\), Illuminate\\Database\\Eloquent\\Model\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Api/BaseApiController.php - - - - message: '#^Using nullsafe property access on non\-nullable type App\\Models\\User\. Use \-\> instead\.$#' - identifier: nullsafe.neverNull - count: 1 - path: app/Http/Controllers/Api/BaseApiController.php - - - - message: '#^If condition is always true\.$#' - identifier: if.alwaysTrue - count: 1 - path: app/Http/Controllers/Api/V1/TagsController.php - - - - message: '#^Negated boolean expression is always true\.$#' - identifier: booleanNot.alwaysTrue - count: 2 - path: app/Http/Controllers/Api/V1/TagsController.php - - - - message: '#^Access to protected property Laravel\\Passport\\PersonalAccessTokenResult\:\:\$token\.$#' - identifier: property.protected - count: 1 - path: app/Http/Controllers/AppRegisterController.php - - - - message: '#^Call to an undefined method Illuminate\\Contracts\\Auth\\StatefulGuard\:\:getLastAttempted\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/Auth/LoginController.php - - - - message: '#^Call to an undefined method Illuminate\\Contracts\\Auth\\StatefulGuard\:\:getProvider\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/Auth/LoginController.php - - - - message: '#^Access to an undefined property App\\Models\\Avatar\:\:\$recentlyCreated\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/AvatarController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$avatar\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/AvatarController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/AvatarController.php - - - - message: '#^Parameter \#1 \$profile of job class App\\Jobs\\AvatarPipeline\\AvatarOptimize constructor expects App\\Models\\Profile in App\\Jobs\\AvatarPipeline\\AvatarOptimize\:\:dispatch\(\), Illuminate\\Database\\Eloquent\\Model\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/AvatarController.php - - - - message: '#^Parameter \#3 \$pad_string of function str_pad expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/AvatarController.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/BookmarkController.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/BookmarkController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/CircleController.php - - - - message: '#^Parameter \#1 \$view of function view expects view\-string\|null, string given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/CircleController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/CollectionController.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 3 - path: app/Http/Controllers/CollectionController.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<1, max\> given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/CollectionController.php - - - - message: '#^Parameter \#1 \$boolean of function abort_unless expects bool, App\\Models\\User\|null given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/CollectionController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 4 - path: app/Http/Controllers/CommentController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$is_private\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/CommentController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$username\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/CommentController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:url\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/CommentController.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/CommentController.php - - - - message: '#^Access to an undefined property App\\Models\\Profile\:\:\$is_followed\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/ComposeController.php - - - - message: '#^Access to an undefined property App\\Models\\Status\:\:\$pc\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/ComposeController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$cw\.$#' - identifier: property.notFound - count: 3 - path: app/Http/Controllers/ComposeController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 9 - path: app/Http/Controllers/ComposeController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$is_private\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/ComposeController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$unlisted\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/ComposeController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$user_id\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/ComposeController.php - - - - message: '#^Expression on left side of \?\? is not nullable\.$#' - identifier: nullCoalesce.expr - count: 1 - path: app/Http/Controllers/ComposeController.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 2 - path: app/Http/Controllers/ComposeController.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Support\\Collection\\:\:filter\(\) expects \(callable\(App\\Models\\Status, int\)\: bool\)\|null, Closure\(mixed\)\: App\\Models\\Status given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/ComposeController.php - - - - message: '#^Property App\\Models\\Media\:\:\$version \(int\) does not accept string\.$#' - identifier: assign.propertyType - count: 1 - path: app/Http/Controllers/ComposeController.php - - - - message: '#^Unreachable statement \- code above always terminates\.$#' - identifier: deadCode.unreachable - count: 1 - path: app/Http/Controllers/ComposeController.php - - - - message: '#^Parameter \#1 \$boolean of function abort_if expects bool, App\\Models\\User\|null given\.$#' - identifier: argument.type - count: 5 - path: app/Http/Controllers/CuratedRegisterController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 6 - path: app/Http/Controllers/CustomFilterController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$keyword\.$#' - identifier: property.notFound - count: 4 - path: app/Http/Controllers/CustomFilterController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$status_id\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/CustomFilterController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$whole_word\.$#' - identifier: property.notFound - count: 4 - path: app/Http/Controllers/CustomFilterController.php - - - - message: '#^Expression on left side of \?\? is not nullable\.$#' - identifier: nullCoalesce.expr - count: 1 - path: app/Http/Controllers/CustomFilterController.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 1 - path: app/Http/Controllers/CustomFilterController.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 6 - path: app/Http/Controllers/CustomFilterController.php - - - - message: '#^Parameter \#1 \$view of function view expects view\-string\|null, string given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/DeckController.php - - - - message: '#^Access to an undefined property App\\Models\\User\:\:\$settings\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/DirectMessageController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$caption\.$#' - identifier: property.notFound - count: 4 - path: app/Http/Controllers/DirectMessageController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$domain\.$#' - identifier: property.notFound - count: 4 - path: app/Http/Controllers/DirectMessageController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 14 - path: app/Http/Controllers/DirectMessageController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$media\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/DirectMessageController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$name\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/DirectMessageController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$username\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/DirectMessageController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:avatarUrl\(\)\.$#' - identifier: method.notFound - count: 2 - path: app/Http/Controllers/DirectMessageController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:url\(\)\.$#' - identifier: method.notFound - count: 2 - path: app/Http/Controllers/DirectMessageController.php - - - - message: '#^Left side of && is always true\.$#' - identifier: booleanAnd.leftAlwaysTrue - count: 1 - path: app/Http/Controllers/DirectMessageController.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 2 - path: app/Http/Controllers/DirectMessageController.php - - - - message: '#^Parameter \#2 \$syntax of method Carbon\\Carbon\:\:diffForHumans\(\) expects array\|int\|null, true given\.$#' - identifier: argument.type - count: 3 - path: app/Http/Controllers/DirectMessageController.php - - - - message: '#^Property App\\Models\\DirectMessage\:\:\$meta \(string\|null\) does not accept array\\.$#' - identifier: assign.propertyType - count: 1 - path: app/Http/Controllers/DirectMessageController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereScope\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/DiscoverController.php - - - - message: '#^Negated boolean expression is always true\.$#' - identifier: booleanNot.alwaysTrue - count: 1 - path: app/Http/Controllers/DiscoverController.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/DiscoverController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$domain\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/FederationController.php - - - - message: '#^Access to an undefined property App\\Models\\GroupPost\|Illuminate\\Database\\Eloquent\\Collection\<\(int\|string\), App\\Models\\GroupPost\>\:\:\$status_id\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/GroupController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Builder\\:\:whereStatusId\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/GroupController.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Http/Controllers/GroupController.php - - - - message: '#^Parameter \#1 \$groupId of static method App\\Services\\GroupService\:\:log\(\) expects string, int given\.$#' - identifier: argument.type - count: 6 - path: app/Http/Controllers/GroupController.php - - - - message: '#^Parameter \#2 \$profileId of static method App\\Services\\GroupService\:\:log\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 6 - path: app/Http/Controllers/GroupController.php - - - - message: '#^Parameter \#6 \$itemId of static method App\\Services\\GroupService\:\:log\(\) expects string\|null, int given\.$#' - identifier: argument.type - count: 5 - path: app/Http/Controllers/GroupController.php - - - - message: '#^Unreachable statement \- code above always terminates\.$#' - identifier: deadCode.unreachable - count: 1 - path: app/Http/Controllers/GroupController.php - - - - message: '#^Using nullsafe property access "\?\-\>profile_id" on left side of \?\? is unnecessary\. Use \-\> instead\.$#' - identifier: nullsafe.neverNull - count: 2 - path: app/Http/Controllers/GroupController.php - - - - message: '#^Access to an undefined property App\\Models\\GroupPost\|Illuminate\\Database\\Eloquent\\Collection\<\(int\|string\), App\\Models\\GroupPost\>\:\:\$status_id\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/GroupFederationController.php - - - - message: '#^Parameter \#1 \$groupId of static method App\\Services\\GroupService\:\:log\(\) expects string, int given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/Groups/CreateGroupsController.php - - - - message: '#^Parameter \#2 \$profileId of static method App\\Services\\GroupService\:\:log\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/Groups/CreateGroupsController.php - - - - message: '#^Parameter \#6 \$itemId of static method App\\Services\\GroupService\:\:log\(\) expects string\|null, int given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Groups/CreateGroupsController.php - - - - message: '#^Access to an undefined property App\\Models\\GroupReport\:\:\$total\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Groups/GroupsAdminController.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Support\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 1 - path: app/Http/Controllers/Groups/GroupsAdminController.php - - - - message: '#^Parameter \#1 \$groupId of static method App\\Services\\GroupService\:\:log\(\) expects string, int given\.$#' - identifier: argument.type - count: 6 - path: app/Http/Controllers/Groups/GroupsAdminController.php - - - - message: '#^Parameter \#2 \$profileId of static method App\\Services\\GroupService\:\:log\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 6 - path: app/Http/Controllers/Groups/GroupsAdminController.php - - - - message: '#^Parameter \#6 \$itemId of static method App\\Services\\GroupService\:\:log\(\) expects string\|null, int given\.$#' - identifier: argument.type - count: 6 - path: app/Http/Controllers/Groups/GroupsAdminController.php - - - - message: '#^Access to an undefined property App\\Models\\GroupMember\:\:\$group\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Groups/GroupsApiController.php - - - - message: '#^Parameter \#1 \$groupId of static method App\\Services\\GroupService\:\:log\(\) expects string, int given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/Groups/GroupsCommentController.php - - - - message: '#^Parameter \#2 \$profileId of static method App\\Services\\GroupService\:\:log\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 3 - path: app/Http/Controllers/Groups/GroupsCommentController.php - - - - message: '#^Parameter \#6 \$itemId of static method App\\Services\\GroupService\:\:log\(\) expects string\|null, int given\.$#' - identifier: argument.type - count: 3 - path: app/Http/Controllers/Groups/GroupsCommentController.php - - - - message: '#^Using nullsafe property access "\?\-\>profile_id" on left side of \?\? is unnecessary\. Use \-\> instead\.$#' - identifier: nullsafe.neverNull - count: 1 - path: app/Http/Controllers/Groups/GroupsFeedController.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/Groups/GroupsMemberController.php - - - - message: '#^Access to an undefined property App\\Models\\GroupPost\|Illuminate\\Database\\Eloquent\\Collection\<\(int\|string\), App\\Models\\GroupPost\>\:\:\$in_reply_to_id\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Groups/GroupsPostController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Groups/GroupsPostController.php - - - - message: '#^Parameter \#1 \$groupId of static method App\\Services\\GroupService\:\:log\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Groups/GroupsPostController.php - - - - message: '#^Parameter \#1 \$groupId of static method App\\Services\\GroupService\:\:log\(\) expects string, int\<0, max\> given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Groups/GroupsPostController.php - - - - message: '#^Parameter \#1 \$status of job class App\\Jobs\\StatusPipeline\\StatusDelete constructor expects App\\Models\\Status in App\\Jobs\\StatusPipeline\\StatusDelete\:\:dispatch\(\), App\\Models\\GroupPost\|Illuminate\\Database\\Eloquent\\Collection\<\(int\|string\), App\\Models\\GroupPost\> given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Groups/GroupsPostController.php - - - - message: '#^Parameter \#2 \$profileId of static method App\\Services\\GroupService\:\:log\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 3 - path: app/Http/Controllers/Groups/GroupsPostController.php - - - - message: '#^Parameter \#6 \$itemId of static method App\\Services\\GroupService\:\:log\(\) expects string\|null, int given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Groups/GroupsPostController.php - - - - message: '#^Parameter \#6 \$itemId of static method App\\Services\\GroupService\:\:log\(\) expects string\|null, int\<0, max\> given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/Groups/GroupsPostController.php - - - - message: '#^Access to an undefined property App\\Models\\Profile\:\:\$profile_id\.$#' - identifier: property.notFound - count: 4 - path: app/Http/Controllers/Groups/GroupsSearchController.php - - - - message: '#^Access to an undefined property App\\Models\\GroupHashtag\|Illuminate\\Database\\Eloquent\\Collection\<\(int\|string\), App\\Models\\GroupHashtag\>\:\:\$slug\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/Groups/GroupsTopicController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 3 - path: app/Http/Controllers/HashtagFollowController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$name\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/HashtagFollowController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 11 - path: app/Http/Controllers/ImportController.php - - - - message: '#^Negated boolean expression is always true\.$#' - identifier: booleanNot.alwaysTrue - count: 1 - path: app/Http/Controllers/ImportPostController.php - - - - message: '#^Property App\\Models\\ImportPost\:\:\$creation_day \(int\<0, max\>\|null\) does not accept ''01''\|''02''\|''03''\|''04''\|''05''\|''06''\|''07''\|''08''\|''09''\|''10''\|''11''\|''12''\|''13''\|''14''\|''15''\|''16''\|''17''\|''18''\|''19''\|''20''\|''21''\|''22''\|''23''\|''24''\|''25''\|''26''\|''27''\|''28''\|''29''\|''30''\|''31''\.$#' - identifier: assign.propertyType - count: 2 - path: app/Http/Controllers/ImportPostController.php - - - - message: '#^Property App\\Models\\ImportPost\:\:\$creation_month \(int\<0, max\>\|null\) does not accept ''01''\|''02''\|''03''\|''04''\|''05''\|''06''\|''07''\|''08''\|''09''\|''10''\|''11''\|''12''\.$#' - identifier: assign.propertyType - count: 2 - path: app/Http/Controllers/ImportPostController.php - - - - message: '#^Property App\\Models\\ImportPost\:\:\$creation_year \(int\<0, max\>\|null\) does not accept numeric\-string\.$#' - identifier: assign.propertyType - count: 2 - path: app/Http/Controllers/ImportPostController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 3 - path: app/Http/Controllers/InternalApiController.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/InternalApiController.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/InternalApiController.php - - - - message: '#^Unreachable statement \- code above always terminates\.$#' - identifier: deadCode.unreachable - count: 1 - path: app/Http/Controllers/LikeController.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 3 - path: app/Http/Controllers/LiveStreamController.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\> given\.$#' - identifier: argument.type - count: 3 - path: app/Http/Controllers/LiveStreamController.php - - - - message: '#^Strict comparison using \=\=\= between false and false will always evaluate to true\.$#' - identifier: identical.alwaysTrue - count: 1 - path: app/Http/Controllers/LiveStreamController.php - - - - message: '#^Ternary operator condition is always true\.$#' - identifier: ternary.alwaysTrue - count: 1 - path: app/Http/Controllers/LiveStreamController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/MicroController.php - - - - message: '#^Unreachable statement \- code above always terminates\.$#' - identifier: deadCode.unreachable - count: 2 - path: app/Http/Controllers/NewsroomController.php - - - - message: '#^Parameter \#1 \$authRequest of method App\\Http\\Controllers\\OAuth\\OobAuthorizationController\:\:isOutOfBandRequest\(\) expects League\\OAuth2\\Server\\RequestTypes\\AuthorizationRequest, League\\OAuth2\\Server\\RequestTypes\\AuthorizationRequestInterface given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/OAuth/OobAuthorizationController.php - - - - message: '#^Access to protected property Laravel\\Passport\\PersonalAccessTokenResult\:\:\$token\.$#' - identifier: property.protected - count: 2 - path: app/Http/Controllers/PersonalAccessTokenController.php - - - - message: '#^Call to function method_exists\(\) with Laravel\\Passport\\Client and ''hasGrantType'' will always evaluate to true\.$#' - identifier: function.alreadyNarrowedType - count: 1 - path: app/Http/Controllers/PersonalAccessTokenController.php - - - - message: '#^Ternary operator condition is always true\.$#' - identifier: ternary.alwaysTrue - count: 1 - path: app/Http/Controllers/PixelfedDirectoryController.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/PollController.php - - - - message: '#^Parameter \#1 \$boolean of function abort_unless expects bool, App\\Models\\User\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/PollController.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/PollController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereProfileId\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/PortfolioController.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 4 - path: app/Http/Controllers/PortfolioController.php - - - - message: '#^Parameter \#1 \$boolean of function abort_unless expects bool, App\\Models\\User\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/PortfolioController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$aliases\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/ProfileAliasController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 3 - path: app/Http/Controllers/ProfileController.php - - - - message: '#^Call to function abort_if\(\) with false and 404 will always evaluate to false\.$#' - identifier: function.impossibleType - count: 1 - path: app/Http/Controllers/ProfileController.php - - - - message: '#^Left side of && is always true\.$#' - identifier: booleanAnd.leftAlwaysTrue - count: 2 - path: app/Http/Controllers/ProfileController.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Http/Controllers/ProfileController.php - - - - message: '#^Offset ''items'' on array\{items\: Illuminate\\Support\\Collection\, permalink\: non\-falsy\-string, headers\: array\{Content\-Type\: ''application/atom\+xml'', Last\-Modified\?\: string\}\} in isset\(\) always exists and is not nullable\.$#' - identifier: isset.offset - count: 1 - path: app/Http/Controllers/ProfileController.php - - - - message: '#^Offset ''permalink'' on array\{items\: Illuminate\\Support\\Collection\, permalink\: non\-falsy\-string, headers\: array\{Content\-Type\: ''application/atom\+xml'', Last\-Modified\?\: string\}\} in isset\(\) always exists and is not nullable\.$#' - identifier: isset.offset - count: 1 - path: app/Http/Controllers/ProfileController.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/ProfileController.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/ProfileController.php - - - - message: '#^Result of \|\| is always false\.$#' - identifier: booleanOr.alwaysFalse - count: 2 - path: app/Http/Controllers/ProfileController.php - - - - message: '#^Strict comparison using \!\=\= between App\\Models\\User and null will always evaluate to true\.$#' - identifier: notIdentical.alwaysTrue - count: 2 - path: app/Http/Controllers/ProfileController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$followers_count\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/ProfileMigrationController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$username\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/ProfileMigrationController.php - - - - message: '#^Access to an undefined property Illuminate\\Support\\ValidatedInput\:\:\$acct\.$#' - identifier: property.notFound - count: 3 - path: app/Http/Controllers/ProfileMigrationController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/PublicApiController.php - - - - message: '#^Left side of && is always true\.$#' - identifier: booleanAnd.leftAlwaysTrue - count: 1 - path: app/Http/Controllers/PublicApiController.php - - - - message: '#^Negated boolean expression is always true\.$#' - identifier: booleanNot.alwaysTrue - count: 2 - path: app/Http/Controllers/PublicApiController.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\> given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/PublicApiController.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/PublicApiController.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 3 - path: app/Http/Controllers/PublicApiController.php - - - - message: '#^Right side of && is always true\.$#' - identifier: booleanAnd.rightAlwaysTrue - count: 4 - path: app/Http/Controllers/PublicApiController.php - - - - message: '#^Ternary operator condition is always true\.$#' - identifier: ternary.alwaysTrue - count: 3 - path: app/Http/Controllers/PublicApiController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$avatar\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/RemoteAuthController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$bio\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/RemoteAuthController.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Http/Controllers/RemoteAuthController.php - - - - message: '#^Parameter \#1 \$boolean of function abort_if expects bool, App\\Models\\User\|null given\.$#' - identifier: argument.type - count: 6 - path: app/Http/Controllers/RemoteAuthController.php - - - - message: '#^Parameter \#1 \$boolean of function abort_unless expects bool, App\\Models\\User\|null given\.$#' - identifier: argument.type - count: 3 - path: app/Http/Controllers/RemoteAuthController.php - - - - message: '#^Access to an undefined property App\\Models\\UserOidcMapping\:\:\$user\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/RemoteOidcController.php - - - - message: '#^Parameter \#1 \$token of method League\\OAuth2\\Client\\Provider\\AbstractProvider\:\:getResourceOwner\(\) expects League\\OAuth2\\Client\\Token\\AccessToken, League\\OAuth2\\Client\\Token\\AccessTokenInterface given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/RemoteOidcController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/ReportController.php - - - - message: '#^Parameter \#2 \$syntax of method Carbon\\Carbon\:\:diffForHumans\(\) expects array\|int\|null, true given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/SearchController.php - - - - message: '#^Access to an undefined property App\\Models\\Status\:\:\$count\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/SeasonalController.php - - - - message: '#^Access to an undefined property App\\Models\\StatusHashtag\:\:\$count\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/SeasonalController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$name\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/SeasonalController.php - - - - message: '#^Cannot call method getName\(\) on string\.$#' - identifier: method.nonObject - count: 2 - path: app/Http/Controllers/SeasonalController.php - - - - message: '#^Cannot call method url\(\) on string\.$#' - identifier: method.nonObject - count: 2 - path: app/Http/Controllers/SeasonalController.php - - - - message: '#^Parameter \#1 \$attributes of static method Illuminate\\Database\\Eloquent\\Builder\\:\:firstOrCreate\(\) expects array\, array\\> given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/SeasonalController.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 2 - path: app/Http/Controllers/SeasonalController.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 2 - path: app/Http/Controllers/SeasonalController.php - - - - message: '#^Access to an undefined property App\\Models\\User\:\:\$settings\.$#' - identifier: property.notFound - count: 5 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$bio\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$delete_after\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$header_bg\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 26 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$indexable\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$is_private\.$#' - identifier: property.notFound - count: 4 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$is_suggestable\.$#' - identifier: property.notFound - count: 4 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$name\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$profile_layout\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$status\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$statuses\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$user_id\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$username\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$website\.$#' - identifier: property.notFound - count: 2 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:blockedProfileUrls\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:followers\(\)\.$#' - identifier: method.notFound - count: 2 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:following\(\)\.$#' - identifier: method.notFound - count: 3 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:hashtagFollowing\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:mutedProfileUrls\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Call to function is_string\(\) with array\|null will always evaluate to false\.$#' - identifier: function.impossibleType - count: 1 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 2 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Parameter \#1 \$view of function view expects view\-string\|null, string given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Parameter \#2 \$member of static method Redis\:\:zRem\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Ternary operator condition is always false\.$#' - identifier: ternary.alwaysFalse - count: 1 - path: app/Http/Controllers/SettingsController.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/SiteController.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/SiteController.php - - - - message: '#^Parameter \#1 \$boolean of function abort_unless expects bool, App\\Models\\User\|null given\.$#' - identifier: argument.type - count: 4 - path: app/Http/Controllers/SpaController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 6 - path: app/Http/Controllers/StatusController.php - - - - message: '#^Parameter \#1 \$boolean of function abort_if expects bool, string\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/StatusController.php - - - - message: '#^Access to an undefined property App\\Models\\Status\|Illuminate\\Database\\Eloquent\\Collection\<\(int\|string\), App\\Models\\Status\>\:\:\$edits\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Controllers/StatusEditController.php - - - - message: '#^Left side of && is always true\.$#' - identifier: booleanAnd.leftAlwaysTrue - count: 1 - path: app/Http/Controllers/Stories/StoryApiV1Controller.php - - - - message: '#^Parameter \#2 \$profile of job class App\\Jobs\\StoryPipeline\\StoryViewDeliver constructor expects App\\Models\\Profile in App\\Jobs\\StoryPipeline\\StoryViewDeliver\:\:dispatch\(\), Illuminate\\Database\\Eloquent\\Model\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/Stories/StoryApiV1Controller.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 4 - path: app/Http/Controllers/StoryComposeController.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 4 - path: app/Http/Controllers/StoryComposeController.php - - - - message: '#^Property App\\Models\\Story\:\:\$story \(array\|null\) does not accept string\|false\.$#' - identifier: assign.propertyType - count: 1 - path: app/Http/Controllers/StoryComposeController.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 5 - path: app/Http/Controllers/StoryController.php - - - - message: '#^Call to function abort_if\(\) with false and 404 will always evaluate to false\.$#' - identifier: function.impossibleType - count: 1 - path: app/Http/Controllers/StoryController.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Http/Controllers/StoryController.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int\<0, max\>\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/StoryController.php - - - - message: '#^Parameter \#1 \$json of function json_decode expects string, array\|null given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/StoryController.php - - - - message: '#^Parameter \#2 \$profile of job class App\\Jobs\\StoryPipeline\\StoryViewDeliver constructor expects App\\Models\\Profile in App\\Jobs\\StoryPipeline\\StoryViewDeliver\:\:dispatch\(\), Illuminate\\Database\\Eloquent\\Model\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/StoryController.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/StoryController.php - - - - message: '#^Parameter \#1 \$boolean of function abort_if expects bool, App\\Models\\User\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Http/Controllers/UserEmailForgotController.php - - - - message: '#^Parameter \#1 \$view of function view expects view\-string\|null, string given\.$#' - identifier: argument.type - count: 2 - path: app/Http/Controllers/UserInviteController.php - - - - message: '#^Call to an undefined method Symfony\\Component\\HttpFoundation\\Response\:\:withHeaders\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Middleware/DeprecatedEndpoint.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:permalink\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Requests/ProfileMigrationStoreRequest.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$cw\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Requests/Status/StoreStatusEditRequest.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$status\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Requests/Status/StoreStatusEditRequest.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$unlisted\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Requests/Status/StoreStatusEditRequest.php - - - - message: '#^Right side of && is always true\.$#' - identifier: booleanAnd.rightAlwaysTrue - count: 1 - path: app/Http/Resources/AdminRemoteReport.php - - - - message: '#^Access to an undefined property App\\Http\\Resources\\StatusStateless\:\:\$caption\.$#' - identifier: property.notFound - count: 3 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Access to an undefined property App\\Http\\Resources\\StatusStateless\:\:\$comments_disabled\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Access to an undefined property App\\Http\\Resources\\StatusStateless\:\:\$created_at\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Access to an undefined property App\\Http\\Resources\\StatusStateless\:\:\$id\.$#' - identifier: property.notFound - count: 7 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Access to an undefined property App\\Http\\Resources\\StatusStateless\:\:\$in_reply_to_id\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Access to an undefined property App\\Http\\Resources\\StatusStateless\:\:\$in_reply_to_profile_id\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Access to an undefined property App\\Http\\Resources\\StatusStateless\:\:\$is_nsfw\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Access to an undefined property App\\Http\\Resources\\StatusStateless\:\:\$local\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Access to an undefined property App\\Http\\Resources\\StatusStateless\:\:\$place\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Access to an undefined property App\\Http\\Resources\\StatusStateless\:\:\$profile_id\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Access to an undefined property App\\Http\\Resources\\StatusStateless\:\:\$reply_count\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Access to an undefined property App\\Http\\Resources\\StatusStateless\:\:\$type\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Access to an undefined property App\\Http\\Resources\\StatusStateless\:\:\$visibility\.$#' - identifier: property.notFound - count: 1 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Call to an undefined method App\\Http\\Resources\\StatusStateless\:\:setType\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Call to an undefined method App\\Http\\Resources\\StatusStateless\:\:url\(\)\.$#' - identifier: method.notFound - count: 2 - path: app/Http/Resources/StatusStateless.php - - - - message: '#^Constant JSON_UNESCAPED_SLASHES is not allowed for parameter \#3 \$depth of function json_encode\.$#' - identifier: argument.invalidConstant - count: 1 - path: app/Jobs/AutospamPipeline/AutospamUpdateCachedDataPipeline.php - - - - message: '#^Left side of && is always true\.$#' - identifier: booleanAnd.leftAlwaysTrue - count: 1 - path: app/Jobs/CommentPipeline/CommentPipeline.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereUserId\(\)\.$#' - identifier: method.notFound - count: 3 - path: app/Jobs/DeletePipeline/DeleteAccountPipeline.php - - - - message: '#^Left side of && is always true\.$#' - identifier: booleanAnd.leftAlwaysTrue - count: 2 - path: app/Jobs/DeletePipeline/DeleteAccountPipeline.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereFollowingId\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Jobs/FollowPipeline/FollowServiceWarmCache.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereProfileId\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Jobs/FollowPipeline/FollowServiceWarmCache.php - - - - message: '#^Parameter \#3 \$language of static method Illuminate\\Support\\Str\:\:slug\(\) expects string\|null, false given\.$#' - identifier: argument.type - count: 1 - path: app/Jobs/GroupPipeline/NewStatusPipeline.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Jobs/GroupsPipeline/ImageS3DeletePipeline.php - - - - message: '#^Left side of && is always true\.$#' - identifier: booleanAnd.leftAlwaysTrue - count: 1 - path: app/Jobs/GroupsPipeline/ImageS3UploadPipeline.php - - - - message: '#^Right side of && is always true\.$#' - identifier: booleanAnd.rightAlwaysTrue - count: 1 - path: app/Jobs/HomeFeedPipeline/FeedInsertPipeline.php - - - - message: '#^Right side of && is always true\.$#' - identifier: booleanAnd.rightAlwaysTrue - count: 1 - path: app/Jobs/HomeFeedPipeline/FeedInsertRemotePipeline.php - - - - message: '#^Right side of && is always true\.$#' - identifier: booleanAnd.rightAlwaysTrue - count: 1 - path: app/Jobs/HomeFeedPipeline/HashtagInsertFanoutPipeline.php - - - - message: '#^Expression on left side of \?\? is not nullable\.$#' - identifier: nullCoalesce.expr - count: 2 - path: app/Jobs/ImageOptimizePipeline/ImageUpdate.php - - - - message: '#^Access to an undefined property App\\Models\\ImportJob\|Illuminate\\Database\\Eloquent\\Collection\<\(int\|string\), App\\Models\\ImportJob\>\:\:\$files\.$#' - identifier: property.notFound - count: 1 - path: app/Jobs/ImportPipeline/ImportInstagram.php - - - - message: '#^Property App\\Models\\Status\:\:\$created_at \(Illuminate\\Support\\Carbon\|null\) does not accept Carbon\\Carbon\.$#' - identifier: assign.propertyType - count: 1 - path: app/Jobs/ImportPipeline/ImportInstagram.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Jobs/ImportPipeline/ImportMediaToCloudPipeline.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Jobs/InboxPipeline/DeleteWorker.php - - - - message: '#^Left side of && is always true\.$#' - identifier: booleanAnd.leftAlwaysTrue - count: 2 - path: app/Jobs/MediaPipeline/MediaDeletePipeline.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Jobs/ProfilePipeline/HandleUpdateActivity.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Jobs/ProfilePipeline/ProfilePurgeFollowersByDomain.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Jobs/ProfilePipeline/ProfilePurgeNotificationsByDomain.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Jobs/SharePipeline/SharePipeline.php - - - - message: '#^If condition is always true\.$#' - identifier: if.alwaysTrue - count: 1 - path: app/Jobs/StatusPipeline/StatusDelete.php - - - - message: '#^Parameter \#3 \$language of static method Illuminate\\Support\\Str\:\:slug\(\) expects string\|null, false given\.$#' - identifier: argument.type - count: 1 - path: app/Jobs/StatusPipeline/StatusEntityLexer.php - - - - message: '#^Offset ''length'' on array\{length\: int, mime\: string\} on left side of \?\? always exists and is not nullable\.$#' - identifier: nullCoalesce.offset - count: 1 - path: app/Jobs/StatusPipeline/StatusRemoteUpdatePipeline.php - - - - message: '#^Left side of && is always true\.$#' - identifier: booleanAnd.leftAlwaysTrue - count: 1 - path: app/Jobs/StatusPipeline/StatusReplyPipeline.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Jobs/StatusPipeline/StatusReplyPipeline.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Jobs/StatusPipeline/StatusTagsPipeline.php - - - - message: '#^Parameter \#3 \$language of static method Illuminate\\Support\\Str\:\:slug\(\) expects string\|null, false given\.$#' - identifier: argument.type - count: 2 - path: app/Jobs/StatusPipeline/StatusTagsPipeline.php - - - - message: '#^Strict comparison using \!\=\= between ''ok'' and ''ok'' will always evaluate to false\.$#' - identifier: notIdentical.alwaysFalse - count: 1 - path: app/Jobs/VideoPipeline/VideoHlsPipeline.php - - - - message: '#^Unreachable statement \- code above always terminates\.$#' - identifier: deadCode.unreachable - count: 1 - path: app/Jobs/VideoPipeline/VideoOptimize.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Jobs/VideoPipeline/VideoThumbnailToCloudPipeline.php - - - - message: '#^Left side of && is always true\.$#' - identifier: booleanAnd.leftAlwaysTrue - count: 2 - path: app/Models/CustomEmoji.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:isExpired\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Models/CustomFilter.php - - - - message: '#^Ternary operator condition is always true\.$#' - identifier: ternary.alwaysTrue - count: 1 - path: app/Models/CustomFilter.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 1 - path: app/Models/DirectMessage.php - - - - message: '#^Property App\\Models\\FailedJob\:\:\$timestamps \(bool\) does not accept default value of type string\.$#' - identifier: property.defaultValue - count: 1 - path: app/Models/FailedJob.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:permalink\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Models/FeatureAuthorization.php - - - - message: '#^If condition is always true\.$#' - identifier: if.alwaysTrue - count: 1 - path: app/Models/ParentalControls.php - - - - message: '#^Unreachable statement \- code above always terminates\.$#' - identifier: deadCode.unreachable - count: 1 - path: app/Models/ParentalControls.php - - - - message: '#^Access to an undefined property App\\Models\\User\:\:\$settings\.$#' - identifier: property.notFound - count: 2 - path: app/Models/Profile.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Models/Profile.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 1 - path: app/Models/Status.php - - - - message: '#^Call to an undefined method App\\Models\\Mention\:\:permalink\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Models/Status.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 1 - path: app/Models/Story.php - - - - message: '#^PHPDoc type array of property App\\Models\\User\:\:\$guarded is not covariant with PHPDoc type array\ of overridden property Illuminate\\Database\\Eloquent\\Model\:\:\$guarded\.$#' - identifier: property.phpDocType - count: 1 - path: app/Models/User.php - - - - message: '#^PHPDoc type array of property App\\Models\\User\:\:\$hidden is not covariant with PHPDoc type list\ of overridden property Illuminate\\Database\\Eloquent\\Model\:\:\$hidden\.$#' - identifier: property.phpDocType - count: 1 - path: app/Models/User.php - - - - message: '#^Property App\\Models\\UserDevice\:\:\$timestamps \(bool\) does not accept default value of type array\\.$#' - identifier: property.defaultValue - count: 1 - path: app/Models/UserDevice.php - - - - message: '#^Call to App\\Services\\StatusHashtagService\:\:del\(\) on a separate line has no effect\.$#' - identifier: staticMethod.resultUnused - count: 2 - path: app/Observers/StatusHashtagObserver.php - - - - message: '#^Call to App\\Services\\StatusHashtagService\:\:set\(\) on a separate line has no effect\.$#' - identifier: staticMethod.resultUnused - count: 3 - path: app/Observers/StatusHashtagObserver.php - - - - message: '#^Parameter \#2 \$blocked_id of static method App\\Services\\UserFilterService\:\:unblock\(\) expects string, int\<0, max\> given\.$#' - identifier: argument.type - count: 1 - path: app/Observers/UserFilterObserver.php - - - - message: '#^Parameter \#2 \$muted_id of static method App\\Services\\UserFilterService\:\:unmute\(\) expects string, int\<0, max\> given\.$#' - identifier: argument.type - count: 1 - path: app/Observers/UserFilterObserver.php - - - - message: '#^If condition is always true\.$#' - identifier: if.alwaysTrue - count: 1 - path: app/Observers/UserObserver.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 2 - path: app/Observers/UserObserver.php - - - - message: '#^Strict comparison using \=\=\= between bool and 1 will always evaluate to false\.$#' - identifier: identical.alwaysFalse - count: 1 - path: app/Providers/AppServiceProvider.php - - - - message: '#^Access to an undefined property App\\Models\\User\:\:\$settings\.$#' - identifier: property.notFound - count: 1 - path: app/Services/AccountService.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$indexable\.$#' - identifier: property.notFound - count: 1 - path: app/Services/AccountService.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$is_suggestable\.$#' - identifier: property.notFound - count: 1 - path: app/Services/AccountService.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereUsername\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Services/AccountService.php - - - - message: '#^Call to function is_string\(\) with string will always evaluate to true\.$#' - identifier: function.alreadyNarrowedType - count: 4 - path: app/Services/ActivityPubDeliveryService.php - - - - message: '#^Instanceof between Illuminate\\Http\\Client\\Response and Illuminate\\Http\\Client\\Response will always evaluate to true\.$#' - identifier: instanceof.alwaysTrue - count: 1 - path: app/Services/ActivityPubDeliveryService.php - - - - message: '#^Dead catch \- Illuminate\\Http\\Client\\ConnectionException is never thrown in the try block\.$#' - identifier: catch.neverThrown - count: 1 - path: app/Services/ActivityPubFetchService.php - - - - message: '#^Dead catch \- Illuminate\\Http\\Client\\RequestException is never thrown in the try block\.$#' - identifier: catch.neverThrown - count: 1 - path: app/Services/ActivityPubFetchService.php - - - - message: '#^Parameter \#2 \$direction of method Illuminate\\Database\\Eloquent\\Builder\\:\:orderBy\(\) expects ''asc''\|''desc''\|SortDirection, ''DESC'' given\.$#' - identifier: argument.type - count: 2 - path: app/Services/AdminStatsService.php - - - - message: '#^Strict comparison using \=\=\= between non\-falsy\-string and '''' will always evaluate to false\.$#' - identifier: identical.alwaysFalse - count: 1 - path: app/Services/AutospamService.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Services/AvatarService.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereType\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Services/DiscoverService.php - - - - message: '#^Loose comparison using \=\= between int\<0, max\>\|false and \-1 will always evaluate to false\.$#' - identifier: equal.alwaysFalse - count: 1 - path: app/Services/DomainService.php - - - - message: '#^Access to an undefined property App\\Models\\User\:\:\$settings\.$#' - identifier: property.notFound - count: 1 - path: app/Services/FeaturedCollectionService.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$domain\.$#' - identifier: property.notFound - count: 1 - path: app/Services/FeaturedCollectionService.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:permalink\(\)\.$#' - identifier: method.notFound - count: 6 - path: app/Services/FeaturedCollectionService.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Services/FeaturedCollectionService.php - - - - message: '#^Parameter \#1 \$from of static method App\\Services\\FeaturedCollectionService\:\:deliver\(\) expects App\\Models\\Profile, Illuminate\\Database\\Eloquent\\Model given\.$#' - identifier: argument.type - count: 1 - path: app/Services/FeaturedCollectionService.php - - - - message: '#^Parameter \#1 \$from of static method App\\Services\\FeaturedCollectionService\:\:deliver\(\) expects App\\Models\\Profile, Illuminate\\Database\\Eloquent\\Model\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Services/FeaturedCollectionService.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Services/FeaturedCollectionService.php - - - - message: '#^Parameter \#2 \$to of static method App\\Services\\FeaturedCollectionService\:\:deliver\(\) expects App\\Models\\Profile, Illuminate\\Database\\Eloquent\\Model given\.$#' - identifier: argument.type - count: 1 - path: app/Services/FeaturedCollectionService.php - - - - message: '#^Parameter \#2 \$to of static method App\\Services\\FeaturedCollectionService\:\:deliver\(\) expects App\\Models\\Profile, Illuminate\\Database\\Eloquent\\Model\|null given\.$#' - identifier: argument.type - count: 1 - path: app/Services/FeaturedCollectionService.php - - - - message: '#^Negated boolean expression is always true\.$#' - identifier: booleanNot.alwaysTrue - count: 1 - path: app/Services/Federation/ActiveSharedInboxService.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Builder\\:\:whereStatusId\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Services/GroupService.php - - - - message: '#^Property App\\Models\\GroupInteraction\:\:\$group_id \(int\<0, max\>\) does not accept string\.$#' - identifier: assign.propertyType - count: 1 - path: app/Services/GroupService.php - - - - message: '#^Property App\\Models\\GroupInteraction\:\:\$profile_id \(int\<0, max\>\) does not accept string\.$#' - identifier: assign.propertyType - count: 1 - path: app/Services/GroupService.php - - - - message: '#^Property App\\Models\\Group\:\:\$profile_id \(int\) does not accept null\.$#' - identifier: assign.propertyType - count: 1 - path: app/Services/Groups/GroupActivityPubService.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Services/Groups/GroupMediaService.php - - - - message: '#^Using nullsafe property access "\?\-\>profile_id" on left side of \?\? is unnecessary\. Use \-\> instead\.$#' - identifier: nullsafe.neverNull - count: 1 - path: app/Services/Groups/GroupPostService.php - - - - message: '#^Expression on left side of \?\? is not nullable\.$#' - identifier: nullCoalesce.expr - count: 1 - path: app/Services/HashtagFollowService.php - - - - message: '#^If condition is always true\.$#' - identifier: if.alwaysTrue - count: 1 - path: app/Services/HashtagFollowService.php - - - - message: '#^Parameter \#2 \$start of static method Redis\:\:zCount\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Services/HashtagFollowService.php - - - - message: '#^Parameter \#3 \$end of static method Redis\:\:zCount\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Services/HashtagFollowService.php - - - - message: '#^Parameter \#1 \$column of method Illuminate\\Database\\Eloquent\\Builder\\:\:where\(\) expects array\\|\(Closure\(Illuminate\\Database\\Query\\Builder\)\: mixed\)\|Illuminate\\Contracts\\Database\\Query\\Expression\|model property of App\\Models\\StatusHashtag, ''h1\.name'' given\.$#' - identifier: argument.type - count: 1 - path: app/Services/HashtagRelatedService.php - - - - message: '#^Right side of && is always true\.$#' - identifier: booleanAnd.rightAlwaysTrue - count: 1 - path: app/Services/HomeTimelineService.php - - - - message: '#^Parameter \#1 \$string of function str_pad expects string, \(float\|int\\) given\.$#' - identifier: argument.type - count: 3 - path: app/Services/ImportService.php - - - - message: '#^Parameter \#3 \$pad_string of function str_pad expects string, int given\.$#' - identifier: argument.type - count: 15 - path: app/Services/ImportService.php - - - - message: '#^Offset ''url'' on array\{id\: string, username\: mixed, url\: non\-falsy\-string, others\: bool\} in isset\(\) always exists and is not nullable\.$#' - identifier: isset.offset - count: 1 - path: app/Services/LikeService.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Services/MediaService.php - - - - message: '#^Access to an undefined property App\\Models\\MediaTag\:\:\$status\.$#' - identifier: property.notFound - count: 1 - path: app/Services/MediaTagService.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Services/NodeinfoService.php - - - - message: '#^Parameter \#3 \$options of static method Redis\:\:set\(\) expects array\|int, string given\.$#' - identifier: argument.type - count: 1 - path: app/Services/NotificationService.php - - - - message: '#^Expression on left side of \?\? is not nullable\.$#' - identifier: nullCoalesce.expr - count: 1 - path: app/Services/PollService.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Query\\Builder\:\:whereProfileId\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Services/ProfileStatusService.php - - - - message: '#^Parameter \#2 \$member of static method Redis\:\:zRem\(\) expects string, int\\|int\<1, max\> given\.$#' - identifier: argument.type - count: 1 - path: app/Services/ReblogService.php - - - - message: '#^Dead catch \- Illuminate\\Http\\Client\\ConnectionException is never thrown in the try block\.$#' - identifier: catch.neverThrown - count: 1 - path: app/Services/SecureMediaFetchService.php - - - - message: '#^Dead catch \- Illuminate\\Http\\Client\\RequestException is never thrown in the try block\.$#' - identifier: catch.neverThrown - count: 1 - path: app/Services/SecureMediaFetchService.php - - - - message: '#^Call to App\\Services\\StatusHashtagService\:\:set\(\) on a separate line has no effect\.$#' - identifier: staticMethod.resultUnused - count: 1 - path: app/Services/StatusHashtagService.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Services/StatusService.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 1 - path: app/Services/StatusService.php - - - - message: '#^Call to function is_array\(\) with \(bool\|Redis\) will always evaluate to false\.$#' - identifier: function.impossibleType - count: 1 - path: app/Services/StoryIndexService.php - - - - message: '#^Offset ''_latest_ts'' on array\{id\: non\-falsy\-string, username\: mixed, username_acct\: mixed, profile_id\: string, avatar\: mixed, is_author\: bool, stories\: array\, url\: string, \.\.\.\} on left side of \?\? always exists and is not nullable\.$#' - identifier: nullCoalesce.offset - count: 4 - path: app/Services/StoryIndexService.php - - - - message: '#^Offset \(int\|string\) on \*NEVER\* on left side of \?\? always exists and is not nullable\.$#' - identifier: nullCoalesce.offset - count: 1 - path: app/Services/StoryIndexService.php - - - - message: '#^Strict comparison using \=\=\= between \*NEVER\* and int\<1, max\> will always evaluate to false\.$#' - identifier: identical.alwaysFalse - count: 1 - path: app/Services/StoryIndexService.php - - - - message: '#^Access to an undefined property App\\Models\\StatusHashtag\:\:\$total\.$#' - identifier: property.notFound - count: 1 - path: app/Services/TrendingHashtagService.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 1 - path: app/Services/TrendingHashtagService.php - - - - message: '#^Instanceof between Carbon\\Carbon and Carbon\\Carbon will always evaluate to true\.$#' - identifier: instanceof.alwaysTrue - count: 1 - path: app/Services/UserStorageService.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Relations\\HasMany\:\:whereScope\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/ProfileOutbox.php - - - - message: '#^Access to an undefined property App\\Models\\Profile\:\:\$aliases\.$#' - identifier: property.notFound - count: 2 - path: app/Transformer/ActivityPub/ProfileTransformer.php - - - - message: '#^Cannot access property \$country on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/StatusTransformer.php - - - - message: '#^Cannot access property \$lat on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/StatusTransformer.php - - - - message: '#^Cannot access property \$long on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/StatusTransformer.php - - - - message: '#^Cannot access property \$name on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/StatusTransformer.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$name\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/CreateNote.php - - - - message: '#^Call to an undefined method App\\Models\\Mention\:\:emailUrl\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/CreateNote.php - - - - message: '#^Call to an undefined method App\\Models\\Mention\:\:permalink\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/CreateNote.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:url\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/CreateNote.php - - - - message: '#^Cannot access property \$country on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/CreateNote.php - - - - message: '#^Cannot access property \$lat on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/CreateNote.php - - - - message: '#^Cannot access property \$long on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/CreateNote.php - - - - message: '#^Cannot access property \$name on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/CreateNote.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 1 - path: app/Transformer/ActivityPub/Verb/CreateNote.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 1 - path: app/Transformer/ActivityPub/Verb/CreateNote.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:permalink\(\)\.$#' - identifier: method.notFound - count: 2 - path: app/Transformer/ActivityPub/Verb/Like.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:url\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/Like.php - - - - message: '#^Access to an undefined property App\\Models\\ProfileMigration\:\:\$profile\.$#' - identifier: property.notFound - count: 3 - path: app/Transformer/ActivityPub/Verb/Move.php - - - - message: '#^Access to an undefined property App\\Models\\ProfileMigration\:\:\$target\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/Move.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$name\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/Note.php - - - - message: '#^Call to an undefined method App\\Models\\Mention\:\:emailUrl\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/Note.php - - - - message: '#^Call to an undefined method App\\Models\\Mention\:\:permalink\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/Note.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:url\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/Note.php - - - - message: '#^Cannot access property \$country on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/Note.php - - - - message: '#^Cannot access property \$lat on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/Note.php - - - - message: '#^Cannot access property \$long on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/Note.php - - - - message: '#^Cannot access property \$name on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/Note.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 1 - path: app/Transformer/ActivityPub/Verb/Note.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 1 - path: app/Transformer/ActivityPub/Verb/Note.php - - - - message: '#^Access to an undefined property App\\Models\\Status\:\:\$poll\.$#' - identifier: property.notFound - count: 3 - path: app/Transformer/ActivityPub/Verb/Question.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$name\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/Question.php - - - - message: '#^Call to an undefined method App\\Models\\Mention\:\:emailUrl\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/Question.php - - - - message: '#^Call to an undefined method App\\Models\\Mention\:\:permalink\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/Question.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:url\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/Question.php - - - - message: '#^Cannot access property \$country on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/Question.php - - - - message: '#^Cannot access property \$lat on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/Question.php - - - - message: '#^Cannot access property \$long on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/Question.php - - - - message: '#^Cannot access property \$name on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/Question.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 1 - path: app/Transformer/ActivityPub/Verb/Question.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 1 - path: app/Transformer/ActivityPub/Verb/Question.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:permalink\(\)\.$#' - identifier: method.notFound - count: 4 - path: app/Transformer/ActivityPub/Verb/UndoLike.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:url\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/UndoLike.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$name\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/UpdateNote.php - - - - message: '#^Call to an undefined method App\\Models\\Mention\:\:emailUrl\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/UpdateNote.php - - - - message: '#^Call to an undefined method App\\Models\\Mention\:\:permalink\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/UpdateNote.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:url\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/ActivityPub/Verb/UpdateNote.php - - - - message: '#^Cannot access property \$country on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/UpdateNote.php - - - - message: '#^Cannot access property \$lat on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/UpdateNote.php - - - - message: '#^Cannot access property \$long on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/UpdateNote.php - - - - message: '#^Cannot access property \$name on string\.$#' - identifier: property.nonObject - count: 1 - path: app/Transformer/ActivityPub/Verb/UpdateNote.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 1 - path: app/Transformer/ActivityPub/Verb/UpdateNote.php - - - - message: '#^Parameter \#1 \$callback of method Illuminate\\Database\\Eloquent\\Collection\\:\:map\(\) contains unresolvable type\.$#' - identifier: argument.unresolvableType - count: 1 - path: app/Transformer/ActivityPub/Verb/UpdateNote.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Transformer/Api/AccountTransformer.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Relations\\HasMany\:\:whereIsNsfw\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/Api/AccountWithStatusesTransformer.php - - - - message: '#^Expression on left side of \?\? is not nullable\.$#' - identifier: nullCoalesce.expr - count: 1 - path: app/Transformer/Api/GroupPostTransformer.php - - - - message: '#^Access to an undefined property App\\Models\\Notification\:\:\$actor\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/Api/Mastodon/v1/NotificationTransformer.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$object_uid\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/Api/NotificationTransformer.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$profile_id\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/Api/NotificationTransformer.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$status_id\.$#' - identifier: property.notFound - count: 2 - path: app/Transformer/Api/NotificationTransformer.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$tagged_username\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/Api/NotificationTransformer.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 2 - path: app/Transformer/Api/RelationshipTransformer.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:blockedIds\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/Api/RelationshipTransformer.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:followedBy\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/Api/RelationshipTransformer.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:follows\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/Api/RelationshipTransformer.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:mutedIds\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/Api/RelationshipTransformer.php - - - - message: '#^Ternary operator condition is always true\.$#' - identifier: ternary.alwaysTrue - count: 5 - path: app/Transformer/Api/RelationshipTransformer.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$id\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/Api/StatusHashtagTransformer.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$is_nsfw\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/Api/StatusHashtagTransformer.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$likes_count\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/Api/StatusHashtagTransformer.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$name\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/Api/StatusHashtagTransformer.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$reblogs_count\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/Api/StatusHashtagTransformer.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$scope\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/Api/StatusHashtagTransformer.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$type\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/Api/StatusHashtagTransformer.php - - - - message: '#^Access to an undefined property Illuminate\\Database\\Eloquent\\Model\:\:\$username\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/Api/StatusHashtagTransformer.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:firstMedia\(\)\.$#' - identifier: method.notFound - count: 2 - path: app/Transformer/Api/StatusHashtagTransformer.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:thumb\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Transformer/Api/StatusHashtagTransformer.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Model\:\:url\(\)\.$#' - identifier: method.notFound - count: 3 - path: app/Transformer/Api/StatusHashtagTransformer.php - - - - message: '#^Access to an undefined property App\\Models\\StoryItem\:\:\$story\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/Api/StoryItemTransformer.php - - - - message: '#^Access to an undefined property App\\Models\\StoryItem\:\:\$type\.$#' - identifier: property.notFound - count: 1 - path: app/Transformer/Api/StoryItemTransformer.php - - - - message: '#^Call to function is_array\(\) with array will always evaluate to true\.$#' - identifier: function.alreadyNarrowedType - count: 1 - path: app/Util/ActivityPub/Helpers.php - - - - message: '#^Constant App\\Util\\ActivityPub\\Helpers\:\:FETCH_CACHE_TTL is unused\.$#' - identifier: classConstant.unused - count: 1 - path: app/Util/ActivityPub/Helpers.php - - - - message: '#^Constant App\\Util\\ActivityPub\\Helpers\:\:MAX_URL_LENGTH is unused\.$#' - identifier: classConstant.unused - count: 1 - path: app/Util/ActivityPub/Helpers.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Util/ActivityPub/Helpers.php - - - - message: '#^Property App\\Models\\Status\:\:\$created_at \(Illuminate\\Support\\Carbon\|null\) does not accept Carbon\\Carbon\.$#' - identifier: assign.propertyType - count: 1 - path: app/Util/ActivityPub/Helpers.php - - - - message: '#^Strict comparison using \=\=\= between non\-falsy\-string and '''' will always evaluate to false\.$#' - identifier: identical.alwaysFalse - count: 1 - path: app/Util/ActivityPub/Helpers.php - - - - message: '#^Unreachable statement \- code above always terminates\.$#' - identifier: deadCode.unreachable - count: 1 - path: app/Util/ActivityPub/Helpers.php - - - - message: '#^Call to function is_string\(\) with string will always evaluate to true\.$#' - identifier: function.alreadyNarrowedType - count: 2 - path: app/Util/ActivityPub/HttpSignature.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Util/ActivityPub/HttpSignature.php - - - - message: '#^Access to an undefined property App\\Models\\User\:\:\$settings\.$#' - identifier: property.notFound - count: 1 - path: app/Util/ActivityPub/Inbox.php - - - - message: '#^Parameter \#1 \$actor of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 2 - path: app/Util/ActivityPub/Inbox.php - - - - message: '#^Parameter \#2 \$target of static method App\\Services\\FollowerService\:\:follows\(\) expects string, int given\.$#' - identifier: argument.type - count: 2 - path: app/Util/ActivityPub/Inbox.php - - - - message: '#^Property App\\Models\\DirectMessage\:\:\$meta \(string\|null\) does not accept array\\.$#' - identifier: assign.propertyType - count: 1 - path: app/Util/ActivityPub/Inbox.php - - - - message: '#^Call to function is_array\(\) with array will always evaluate to true\.$#' - identifier: function.alreadyNarrowedType - count: 2 - path: app/Util/ActivityPub/Inbox/HandlesCreates.php - - - - message: '#^Negated boolean expression is always false\.$#' - identifier: booleanNot.alwaysFalse - count: 1 - path: app/Util/ActivityPub/Inbox/HandlesCreates.php - - - - message: '#^Call to function is_array\(\) with array will always evaluate to true\.$#' - identifier: function.alreadyNarrowedType - count: 1 - path: app/Util/ActivityPub/Inbox/HandlesUndos.php - - - - message: '#^Ternary operator condition is always true\.$#' - identifier: ternary.alwaysTrue - count: 1 - path: app/Util/Blurhash/Blurhash.php - - - - message: '#^Strict comparison using \!\=\= between array\{list\, list\\} and array\{\} will always evaluate to true\.$#' - identifier: notIdentical.alwaysTrue - count: 1 - path: app/Util/Lexer/Hashtag.php - - - - message: '#^Offset 4 on non\-empty\-array\ in empty\(\) always exists and is not falsy\.$#' - identifier: empty.offset - count: 1 - path: app/Util/Lexer/Validator.php - - - - message: '#^Offset ''code'' on array\{code\: string, name\: string, nativeName\: string\} on left side of \?\? always exists and is not nullable\.$#' - identifier: nullCoalesce.offset - count: 1 - path: app/Util/Localization/Localization.php - - - - message: '#^Call to an undefined method Illuminate\\Database\\Eloquent\\Relations\\HasMany\:\:whereScope\(\)\.$#' - identifier: method.notFound - count: 1 - path: app/Util/Sentiment/Bouncer.php diff --git a/phpstan.neon b/phpstan.neon index 5cc1a153b..952018c6b 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -1,10 +1,9 @@ includes: - vendor/larastan/larastan/extension.neon - vendor/nesbot/carbon/extension.neon - - phpstan-baseline.neon parameters: - level: 5 #Larascan supports 0-9. 10 is not required + level: 2 #Larascan supports 0-9. 10 is not required paths: - app/ @@ -80,4 +79,36 @@ parameters: - app/Http/Controllers/StoryComposeController.php - app/Util/Lexer/Validator.php + # Deprecated command references the avatars.thumb_path column, which was + # dropped in migration 2021_01_25_011355. The command is dead/legacy. + - + message: '#Access to an undefined property App\\Models\\Avatar::\$thumb_path#' + path: app/Console/Commands/Deprecated/AvatarDefaultMigration.php + + # Eloquent/Query magic that Larastan cannot statically resolve when a + # value is typed as the base Model/Builder rather than a concrete model. + # See https://github.com/larastan/larastan/blob/3.x/docs/errors-to-ignore.md + - '#Access to an undefined property Illuminate\\Database\\Eloquent\\Model::\$#' + - '#Call to an undefined method Illuminate\\Database\\Eloquent\\Builder<[^>]+>::#' + - '#Call to an undefined method Illuminate\\Database\\Eloquent\\Model::#' + - '#Call to an undefined method Illuminate\\Database\\Query\\Builder::#' + - '#Call to an undefined method Illuminate\\Support\\HigherOrder#' + + # find()/findOrFail() widen to Model|Collection because the id arg could + # be an array; callers here pass a scalar id, so it is a single model. + - '#Access to an undefined property App\\Models\\[A-Za-z]+\|Illuminate\\Database\\Eloquent\\Collection#' + + # Model query scopes (whereScope, whereIsNsfw, ...) called through a + # relation object; valid at runtime, unresolvable statically. + - '#Call to an undefined method Illuminate\\Database\\Eloquent\\Relations\\HasMany::where\w+\(\)#' + + # Vendor/framework contracts whose concrete runtime types expose these + # members but whose interfaces/stubs do not declare them. + - '#Access to (an undefined|protected) property Laravel\\Passport\\#' + - '#Call to an undefined method Illuminate\\Contracts\\Auth\\StatefulGuard::#' + - '#Call to an undefined method Illuminate\\Contracts\\Pagination\\CursorPaginator::#' + - '#Access to an undefined property Illuminate\\Support\\ValidatedInput::#' + - '#Call to an undefined static method Illuminate\\Database\\Eloquent\\Model::withTrashed\(\)#' + - '#Call to an undefined method Symfony\\Component\\HttpFoundation\\Response::withHeaders\(\)#' + reportUnmatchedIgnoredErrors: false