Skip to content

Commit 19c5d56

Browse files
authored
chore: Setup PHPStan Level 5 (#3553)
1 parent 2384879 commit 19c5d56

File tree

120 files changed

+576
-10625
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

120 files changed

+576
-10625
lines changed

composer.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
"minimum-stability": "dev",
55
"license": "MIT",
66
"require": {
7-
"phpstan/phpstan-php-parser": "^1.0",
8-
"phpstan/phpstan": "^1.2"
7+
"phpstan/phpstan": "^1.2",
8+
"nunomaduro/larastan": "^1.0"
99
},
1010
"autoload": {
1111
"psr-4": {

extension.neon

Lines changed: 15 additions & 289 deletions
Original file line numberDiff line numberDiff line change
@@ -1,291 +1,17 @@
11
includes:
2-
- vendor/phpstan/phpstan-php-parser/extension.neon
3-
parameters:
4-
stubFiles:
5-
- stubs/Illuminate/Enumerable.stub
6-
- stubs/Illuminate/Database/EloquentBuilder.stub
7-
- stubs/Illuminate/Collection.stub
8-
- stubs/Illuminate/Database/EloquentCollection.stub
9-
- stubs/Illuminate/Database/Factory.stub
10-
- stubs/Illuminate/Database/Model.stub
11-
- stubs/Illuminate/Database/Gate.stub
12-
- stubs/Illuminate/Database/Relation.stub
13-
- stubs/Illuminate/Database/BelongsTo.stub
14-
- stubs/Illuminate/Database/BelongsToMany.stub
15-
- stubs/Illuminate/Database/HasOneOrMany.stub
16-
- stubs/Illuminate/Database/HasMany.stub
17-
- stubs/Illuminate/Database/HasOne.stub
18-
- stubs/Illuminate/Database/HasOneThrough.stub
19-
- stubs/Illuminate/Database/HasManyThrough.stub
20-
- stubs/Illuminate/Database/MorphTo.stub
21-
- stubs/Illuminate/Database/MorphToMany.stub
22-
- stubs/Illuminate/Database/MorphMany.stub
23-
- stubs/Illuminate/Database/MorphOne.stub
24-
- stubs/Illuminate/Database/MorphOneOrMany.stub
25-
- stubs/Illuminate/HigherOrderProxies.stub
26-
- stubs/Illuminate/Database/QueryBuilder.stub
27-
- stubs/Illuminate/EnumeratesValues.stub
28-
- stubs/Contracts/Support.stub
29-
universalObjectCratesClasses:
30-
- Illuminate\Http\Request
31-
mixinExcludeClasses:
32-
- Eloquent
33-
earlyTerminatingFunctionCalls:
34-
- abort
35-
- dd
36-
excludePaths:
37-
- *.blade.php
38-
checkGenericClassInNonGenericObjectType: false
39-
checkModelProperties: false
40-
databaseMigrationsPath: []
41-
42-
parametersSchema:
43-
databaseMigrationsPath: listOf(string())
44-
checkModelProperties: bool()
45-
46-
services:
47-
-
48-
class: Flarum\PHPStan\Methods\RelationForwardsCallsExtension
49-
tags:
50-
- phpstan.broker.methodsClassReflectionExtension
51-
52-
-
53-
class: Flarum\PHPStan\Methods\ModelForwardsCallsExtension
54-
tags:
55-
- phpstan.broker.methodsClassReflectionExtension
56-
57-
-
58-
class: Flarum\PHPStan\Methods\EloquentBuilderForwardsCallsExtension
59-
tags:
60-
- phpstan.broker.methodsClassReflectionExtension
61-
62-
-
63-
class: Flarum\PHPStan\Methods\HigherOrderTapProxyExtension
64-
tags:
65-
- phpstan.broker.methodsClassReflectionExtension
66-
67-
-
68-
class: Flarum\PHPStan\Methods\HigherOrderCollectionProxyExtension
69-
tags:
70-
- phpstan.broker.methodsClassReflectionExtension
71-
72-
-
73-
class: Flarum\PHPStan\Methods\StorageMethodsClassReflectionExtension
74-
tags:
75-
- phpstan.broker.methodsClassReflectionExtension
76-
77-
-
78-
class: Flarum\PHPStan\Methods\Extension
79-
tags:
80-
- phpstan.broker.methodsClassReflectionExtension
81-
-
82-
class: Flarum\PHPStan\Methods\ModelFactoryMethodsClassReflectionExtension
83-
tags:
84-
- phpstan.broker.methodsClassReflectionExtension
85-
86-
-
87-
class: Flarum\PHPStan\Properties\ModelAccessorExtension
88-
tags:
89-
- phpstan.broker.propertiesClassReflectionExtension
90-
91-
-
92-
class: Flarum\PHPStan\Properties\ModelPropertyExtension
93-
tags:
94-
- phpstan.broker.propertiesClassReflectionExtension
95-
96-
-
97-
class: Flarum\PHPStan\Properties\HigherOrderCollectionProxyPropertyExtension
98-
tags:
99-
- phpstan.broker.propertiesClassReflectionExtension
100-
101-
-
102-
class: Flarum\PHPStan\Types\RelationDynamicMethodReturnTypeExtension
103-
tags:
104-
- phpstan.broker.dynamicMethodReturnTypeExtension
105-
106-
-
107-
class: Flarum\PHPStan\Types\ModelRelationsDynamicMethodReturnTypeExtension
108-
tags:
109-
- phpstan.broker.dynamicMethodReturnTypeExtension
110-
111-
-
112-
class: Flarum\PHPStan\ReturnTypes\HigherOrderTapProxyExtension
113-
tags:
114-
- phpstan.broker.dynamicMethodReturnTypeExtension
115-
-
116-
class: Flarum\PHPStan\ReturnTypes\ContainerArrayAccessDynamicMethodReturnTypeExtension
117-
tags:
118-
- phpstan.broker.dynamicMethodReturnTypeExtension
119-
arguments:
120-
className: Illuminate\Contracts\Container\Container
121-
-
122-
class: Flarum\PHPStan\ReturnTypes\ContainerArrayAccessDynamicMethodReturnTypeExtension
123-
tags:
124-
- phpstan.broker.dynamicMethodReturnTypeExtension
125-
arguments:
126-
className: Illuminate\Container\Container
127-
-
128-
class: Flarum\PHPStan\ReturnTypes\ContainerArrayAccessDynamicMethodReturnTypeExtension
129-
tags:
130-
- phpstan.broker.dynamicMethodReturnTypeExtension
131-
arguments:
132-
className: Illuminate\Foundation\Application
133-
-
134-
class: Flarum\PHPStan\ReturnTypes\ContainerArrayAccessDynamicMethodReturnTypeExtension
135-
tags:
136-
- phpstan.broker.dynamicMethodReturnTypeExtension
137-
arguments:
138-
className: Illuminate\Contracts\Foundation\Application
139-
140-
-
141-
class: Flarum\PHPStan\Properties\ModelRelationsExtension
142-
tags:
143-
- phpstan.broker.propertiesClassReflectionExtension
144-
145-
-
146-
class: Flarum\PHPStan\ReturnTypes\ModelFactoryDynamicStaticMethodReturnTypeExtension
147-
tags:
148-
- phpstan.broker.dynamicStaticMethodReturnTypeExtension
149-
150-
-
151-
class: Flarum\PHPStan\ReturnTypes\ModelExtension
152-
tags:
153-
- phpstan.broker.dynamicStaticMethodReturnTypeExtension
154-
155-
-
156-
class: Flarum\PHPStan\ReturnTypes\RequestExtension
157-
tags:
158-
- phpstan.broker.dynamicMethodReturnTypeExtension
159-
160-
-
161-
class: Flarum\PHPStan\ReturnTypes\EloquentBuilderExtension
162-
tags:
163-
- phpstan.broker.dynamicMethodReturnTypeExtension
164-
165-
-
166-
class: Flarum\PHPStan\ReturnTypes\RelationFindExtension
167-
tags:
168-
- phpstan.broker.dynamicMethodReturnTypeExtension
2+
- larastan-extension.neon
3+
- phpstan-baseline.neon
1694

170-
-
171-
class: Flarum\PHPStan\ReturnTypes\RelationCollectionExtension
172-
tags:
173-
- phpstan.broker.dynamicMethodReturnTypeExtension
174-
175-
-
176-
class: Flarum\PHPStan\ReturnTypes\ModelFindExtension
177-
tags:
178-
- phpstan.broker.dynamicStaticMethodReturnTypeExtension
179-
180-
-
181-
class: Flarum\PHPStan\ReturnTypes\BuilderModelFindExtension
182-
tags:
183-
- phpstan.broker.dynamicMethodReturnTypeExtension
184-
185-
-
186-
class: Flarum\PHPStan\ReturnTypes\TestCaseExtension
187-
tags:
188-
- phpstan.broker.dynamicMethodReturnTypeExtension
189-
190-
-
191-
class: Flarum\PHPStan\ReturnTypes\CollectionMakeDynamicStaticMethodReturnTypeExtension
192-
tags:
193-
- phpstan.broker.dynamicStaticMethodReturnTypeExtension
194-
195-
-
196-
class: Flarum\PHPStan\Support\CollectionHelper
197-
198-
-
199-
class: Flarum\PHPStan\ReturnTypes\Helpers\CollectExtension
200-
tags:
201-
- phpstan.broker.dynamicFunctionReturnTypeExtension
202-
203-
-
204-
class: Flarum\PHPStan\ReturnTypes\Helpers\TransExtension
205-
tags:
206-
- phpstan.broker.dynamicFunctionReturnTypeExtension
207-
208-
-
209-
class: Flarum\PHPStan\ReturnTypes\Helpers\ValidatorExtension
210-
tags:
211-
- phpstan.broker.dynamicFunctionReturnTypeExtension
212-
213-
-
214-
class: Flarum\PHPStan\ReturnTypes\CollectionFilterDynamicReturnTypeExtension
215-
tags:
216-
- phpstan.broker.dynamicMethodReturnTypeExtension
217-
218-
-
219-
class: Flarum\PHPStan\Types\AbortIfFunctionTypeSpecifyingExtension
220-
tags:
221-
- phpstan.typeSpecifier.functionTypeSpecifyingExtension
222-
arguments:
223-
methodName: 'abort'
224-
negate: false
225-
226-
-
227-
class: Flarum\PHPStan\Types\AbortIfFunctionTypeSpecifyingExtension
228-
tags:
229-
- phpstan.typeSpecifier.functionTypeSpecifyingExtension
230-
arguments:
231-
methodName: 'abort'
232-
negate: true
233-
234-
-
235-
class: Flarum\PHPStan\Types\AbortIfFunctionTypeSpecifyingExtension
236-
tags:
237-
- phpstan.typeSpecifier.functionTypeSpecifyingExtension
238-
arguments:
239-
methodName: throw
240-
negate: false
241-
242-
-
243-
class: Flarum\PHPStan\Types\AbortIfFunctionTypeSpecifyingExtension
244-
tags:
245-
- phpstan.typeSpecifier.functionTypeSpecifyingExtension
246-
arguments:
247-
methodName: throw
248-
negate: true
249-
250-
-
251-
class: Flarum\PHPStan\ReturnTypes\Helpers\AppExtension
252-
tags:
253-
- phpstan.broker.dynamicFunctionReturnTypeExtension
254-
255-
-
256-
class: Flarum\PHPStan\ReturnTypes\Helpers\ValueExtension
257-
tags:
258-
- phpstan.broker.dynamicFunctionReturnTypeExtension
259-
260-
-
261-
class: Flarum\PHPStan\ReturnTypes\Helpers\TapExtension
262-
tags:
263-
- phpstan.broker.dynamicFunctionReturnTypeExtension
264-
265-
-
266-
class: Flarum\PHPStan\ReturnTypes\StorageDynamicStaticMethodReturnTypeExtension
267-
tags:
268-
- phpstan.broker.dynamicStaticMethodReturnTypeExtension
269-
270-
-
271-
class: Flarum\PHPStan\Types\GenericEloquentCollectionTypeNodeResolverExtension
272-
tags:
273-
- phpstan.phpDoc.typeNodeResolverExtension
274-
275-
-
276-
class: Flarum\PHPStan\Types\ViewStringTypeNodeResolverExtension
277-
tags:
278-
- phpstan.phpDoc.typeNodeResolverExtension
279-
-
280-
class: Flarum\PHPStan\Methods\BuilderHelper
281-
arguments:
282-
checkProperties: %checkModelProperties%
283-
-
284-
class: Flarum\PHPStan\Properties\MigrationHelper
285-
arguments:
286-
databaseMigrationPath: %databaseMigrationsPath%
287-
parser: @currentPhpVersionSimpleDirectParser
288-
-
289-
class: Flarum\PHPStan\Types\RelationParserHelper
290-
arguments:
291-
parser: @currentPhpVersionSimpleDirectParser
5+
parameters:
6+
stubFiles:
7+
- stubs/Illuminate/Contracts/Container/Container.stub
8+
- stubs/Illuminate/Queue/ListenerOptions.stub
9+
- stubs/Illuminate/Support/ServiceProvider.stub
10+
- stubs/Illuminate/Filesystem/Filesystem.stub
11+
- stubs/Illuminate/Filesystem/FilesystemManager.stub
12+
13+
# We're changing the disk return type from Filesystem to Cloud,
14+
# rather than hacking every bit of the codebase with a phpdoc @var.
15+
- stubs/Illuminate/Contracts/Filesystem/Factory.stub
16+
- stubs/Illuminate/Contracts/Filesystem/Cloud.stub
17+
- stubs/Illuminate/Contracts/Filesystem/Filesystem.stub

0 commit comments

Comments
 (0)