Skip to content

Commit 04af6c4

Browse files
authored
fix(phpstab): adapt phpstan package for extension use (#3727)
- fix "Stub file does not exist" error message as reported in <flarum/docs#441 (comment)> - fix "Ignored error pattern was not matched in reported errors" error messages as reported in <flarum/docs#441 (comment)>
1 parent f98654a commit 04af6c4

File tree

2 files changed

+43
-37
lines changed

2 files changed

+43
-37
lines changed

larastan-extension.neon

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,36 @@
11
parameters:
22
stubFiles:
3-
- ../../vendor/nunomaduro/larastan/stubs/Enumerable.stub
4-
- ../../vendor/nunomaduro/larastan/stubs/EloquentBuilder.stub
5-
- ../../vendor/nunomaduro/larastan/stubs/Collection.stub
6-
- ../../vendor/nunomaduro/larastan/stubs/EloquentCollection.stub
7-
- ../../vendor/nunomaduro/larastan/stubs/Factory.stub
8-
- ../../vendor/nunomaduro/larastan/stubs/Model.stub
9-
- ../../vendor/nunomaduro/larastan/stubs/Gate.stub
10-
- ../../vendor/nunomaduro/larastan/stubs/Relation.stub
11-
- ../../vendor/nunomaduro/larastan/stubs/BelongsTo.stub
12-
- ../../vendor/nunomaduro/larastan/stubs/BelongsToMany.stub
13-
- ../../vendor/nunomaduro/larastan/stubs/HasOneOrMany.stub
14-
- ../../vendor/nunomaduro/larastan/stubs/HasMany.stub
15-
- ../../vendor/nunomaduro/larastan/stubs/HasOne.stub
16-
- ../../vendor/nunomaduro/larastan/stubs/HasOneThrough.stub
17-
- ../../vendor/nunomaduro/larastan/stubs/HasManyThrough.stub
18-
- ../../vendor/nunomaduro/larastan/stubs/Mailable.stub
19-
- ../../vendor/nunomaduro/larastan/stubs/MorphOne.stub
20-
- ../../vendor/nunomaduro/larastan/stubs/MorphOneOrMany.stub
21-
- ../../vendor/nunomaduro/larastan/stubs/MorphTo.stub
22-
- ../../vendor/nunomaduro/larastan/stubs/MorphToMany.stub
23-
- ../../vendor/nunomaduro/larastan/stubs/MorphMany.stub
24-
- ../../vendor/nunomaduro/larastan/stubs/Helpers.stub
25-
- ../../vendor/nunomaduro/larastan/stubs/HigherOrderProxies.stub
26-
- ../../vendor/nunomaduro/larastan/stubs/QueryBuilder.stub
27-
- ../../vendor/nunomaduro/larastan/stubs/Facades.stub
28-
- ../../vendor/nunomaduro/larastan/stubs/Pagination.stub
29-
- ../../vendor/nunomaduro/larastan/stubs/Contracts/Pagination.stub
30-
- ../../vendor/nunomaduro/larastan/stubs/Contracts/Support.stub
31-
- ../../vendor/nunomaduro/larastan/stubs/Redis/Connection.stub
32-
- ../../vendor/nunomaduro/larastan/stubs/Logger.stub
33-
- ../../vendor/nunomaduro/larastan/stubs/EnumeratesValues.stub
3+
- %rootDir%/../../nunomaduro/larastan/stubs/Enumerable.stub
4+
- %rootDir%/../../nunomaduro/larastan/stubs/EloquentBuilder.stub
5+
- %rootDir%/../../nunomaduro/larastan/stubs/Collection.stub
6+
- %rootDir%/../../nunomaduro/larastan/stubs/EloquentCollection.stub
7+
- %rootDir%/../../nunomaduro/larastan/stubs/Factory.stub
8+
- %rootDir%/../../nunomaduro/larastan/stubs/Model.stub
9+
- %rootDir%/../../nunomaduro/larastan/stubs/Gate.stub
10+
- %rootDir%/../../nunomaduro/larastan/stubs/Relation.stub
11+
- %rootDir%/../../nunomaduro/larastan/stubs/BelongsTo.stub
12+
- %rootDir%/../../nunomaduro/larastan/stubs/BelongsToMany.stub
13+
- %rootDir%/../../nunomaduro/larastan/stubs/HasOneOrMany.stub
14+
- %rootDir%/../../nunomaduro/larastan/stubs/HasMany.stub
15+
- %rootDir%/../../nunomaduro/larastan/stubs/HasOne.stub
16+
- %rootDir%/../../nunomaduro/larastan/stubs/HasOneThrough.stub
17+
- %rootDir%/../../nunomaduro/larastan/stubs/HasManyThrough.stub
18+
- %rootDir%/../../nunomaduro/larastan/stubs/Mailable.stub
19+
- %rootDir%/../../nunomaduro/larastan/stubs/MorphOne.stub
20+
- %rootDir%/../../nunomaduro/larastan/stubs/MorphOneOrMany.stub
21+
- %rootDir%/../../nunomaduro/larastan/stubs/MorphTo.stub
22+
- %rootDir%/../../nunomaduro/larastan/stubs/MorphToMany.stub
23+
- %rootDir%/../../nunomaduro/larastan/stubs/MorphMany.stub
24+
- %rootDir%/../../nunomaduro/larastan/stubs/Helpers.stub
25+
- %rootDir%/../../nunomaduro/larastan/stubs/HigherOrderProxies.stub
26+
- %rootDir%/../../nunomaduro/larastan/stubs/QueryBuilder.stub
27+
- %rootDir%/../../nunomaduro/larastan/stubs/Facades.stub
28+
- %rootDir%/../../nunomaduro/larastan/stubs/Pagination.stub
29+
- %rootDir%/../../nunomaduro/larastan/stubs/Contracts/Pagination.stub
30+
- %rootDir%/../../nunomaduro/larastan/stubs/Contracts/Support.stub
31+
- %rootDir%/../../nunomaduro/larastan/stubs/Redis/Connection.stub
32+
- %rootDir%/../../nunomaduro/larastan/stubs/Logger.stub
33+
- %rootDir%/../../nunomaduro/larastan/stubs/EnumeratesValues.stub
3434
universalObjectCratesClasses:
3535
- Illuminate\Http\Request
3636
earlyTerminatingFunctionCalls:

phpstan-baseline.neon

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,23 @@
11
parameters:
22
ignoreErrors:
33
# Remove this group below with larastan 2.0 (i.e Flarum 2.0)
4-
- "#Relation '[A-z_-]+' is not found in [A-z\_]+ model.#"
5-
- '#^Parameter \#1 \$query of method [A-z_<>\\]+\:\:union\(\) expects [A-z_<> .,|\\]+ given\.$#'
6-
- '#^Parameter \#1 \$query of method [A-z_<>\\]+\:\:joinSub\(\) expects [A-z_<> .,|\\]+ given\.$#'
4+
- message: "#Relation '[A-z_-]+' is not found in [A-z\_]+ model.#"
5+
reportUnmatched: false
6+
- message: '#^Parameter \#1 \$query of method [A-z_<>\\]+\:\:union\(\) expects [A-z_<> .,|\\]+ given\.$#'
7+
reportUnmatched: false
8+
- message: '#^Parameter \#1 \$query of method [A-z_<>\\]+\:\:joinSub\(\) expects [A-z_<> .,|\\]+ given\.$#'
9+
reportUnmatched: false
710

811
# We ignore this because resolve can either take a class name as the generic return type or just a binding name.
9-
- "#Template type T of function resolve[()]{2} is not referenced in a parameter.#"
12+
- message: "#Template type T of function resolve[()]{2} is not referenced in a parameter.#"
13+
reportUnmatched: false
1014

1115
# We ignore new static errors because we want extensibility.
1216
# @TODO: needs discussion.
13-
- "#^Unsafe usage of new static[()]{2}.$#"
17+
- message: "#^Unsafe usage of new static[()]{2}.$#"
18+
reportUnmatched: false
1419

1520
# ConnectionInterface lacks methods that exist in the implementation,
1621
# yet we don't want to inject the implementation.
17-
- '#^Call to an undefined method Illuminate\\Database\\ConnectionInterface\:\:[A-z0-9_]+\(\)\.$#'
22+
- message: '#^Call to an undefined method Illuminate\\Database\\ConnectionInterface\:\:[A-z0-9_]+\(\)\.$#'
23+
reportUnmatched: false

0 commit comments

Comments
 (0)