-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpsalm.xml
More file actions
157 lines (155 loc) · 9.05 KB
/
Copy pathpsalm.xml
File metadata and controls
157 lines (155 loc) · 9.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
<?xml version="1.0"?>
<psalm
errorLevel="4"
resolveFromConfigFile="true"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="https://getpsalm.org/schema/config"
findUnusedBaselineEntry="true"
findUnusedCode="true"
findUnusedVariablesAndParams="true"
>
<projectFiles>
<directory name="lib" />
<ignoreFiles>
<directory name="vendor" />
</ignoreFiles>
</projectFiles>
<stubs>
<file name="vendor/nextcloud/ocp/OCP/Capabilities/ICapability.php" preloadClasses="true" />
<!--
OpenRegister's data-access contract, which this app's lib/ typehints
but does not own. OpenRegister supplies it at RUNTIME; these are
analysis stubs only.
hydra-gates used to make them resolvable by declaring
`OCA\OpenRegister\Contract\` as a psr-4 prefix, which was a bug: that
prefix is longer than openregister's own, so a vendored copy in ANY
app defined the contract for the whole process (ConductionNL/.github#531).
v1.9.0 removed it, and the runtime side is handled by the guarded
require in tests/bootstrap-unit.php.
Psalm never runs that bootstrap — it resolves types through the
composer autoload map — so removing the prefix left 204 UndefinedClass
errors here. A stub is the right seam: it teaches the analyser the
shape without putting the class back into the runtime autoloader,
which is what caused the original defect.
-->
<file name="vendor/conduction/hydra-gates/hydra-gates/contracts/ObjectServiceInterface.php" />
<file name="vendor/conduction/hydra-gates/hydra-gates/contracts/ObjectEntityInterface.php" />
</stubs>
<issueHandlers>
<UndefinedDocblockClass errorLevel="suppress"/>
<UnusedClosureParam errorLevel="suppress"/>
<UndefinedClass>
<errorLevel type="suppress">
<!-- Nextcloud OCP Classes -->
<referencedClass name="OCP\AppFramework\App"/>
<referencedClass name="OCP\AppFramework\Bootstrap\IBootstrap"/>
<referencedClass name="OCP\AppFramework\Controller"/>
<referencedClass name="OCP\AppFramework\IAppContainer"/>
<referencedClass name="OCP\App\IAppManager"/>
<referencedClass name="OCP\BackgroundJob\IJobList"/>
<referencedClass name="OCP\BackgroundJob\QueuedJob"/>
<referencedClass name="OCP\BackgroundJob\TimedJob"/>
<referencedClass name="OCP\EventDispatcher\Event"/>
<referencedClass name="OCP\EventDispatcher\IEventListener"/>
<referencedClass name="OCP\IAppConfig"/>
<referencedClass name="OCP\ICacheFactory"/>
<referencedClass name="OCP\IConfig"/>
<referencedClass name="OCP\IDBConnection"/>
<referencedClass name="OCP\IGroupManager"/>
<referencedClass name="OCP\IUserManager"/>
<referencedClass name="OCP\IUserSession"/>
<referencedClass name="OCP\IMemcache"/>
<referencedClass name="OCP\IRequest"/>
<referencedClass name="OCP\EventDispatcher\IEventDispatcher"/>
<referencedClass name="OCP\DB\QueryBuilder\IQueryBuilder"/>
<referencedClass name="OCP\AppFramework\Db\QBMapper"/>
<referencedClass name="OCP\AppFramework\Db\Entity"/>
<referencedClass name="OCP\Files\IRootFolder"/>
<referencedClass name="OCP\Files\Node"/>
<referencedClass name="OCP\Files\File"/>
<referencedClass name="OCP\Files\Folder"/>
<referencedClass name="OCP\Files\NotFoundException"/>
<referencedClass name="OCP\AppFramework\Http\JSONResponse"/>
<referencedClass name="OCP\AppFramework\Http\TemplateResponse"/>
<referencedClass name="OCP\AppFramework\Http\DataResponse"/>
<referencedClass name="OCP\IL10N"/>
<referencedClass name="OCP\IURLGenerator"/>
<referencedClass name="OCP\Http\Client\IClient"/>
<referencedClass name="OCP\Http\Client\IClientService"/>
<referencedClass name="OCP\Notification\IManager"/>
<referencedClass name="OCP\Share\IManager"/>
<!-- OpenRegister cross-app classes (loaded dynamically) -->
<referencedClass name="OCA\OpenRegister\Db\ObjectEntity"/>
<referencedClass name="OCA\OpenRegister\Db\RegisterMapper"/>
<referencedClass name="OCA\OpenRegister\Db\SchemaMapper"/>
<referencedClass name="OCA\OpenRegister\Event\DeepLinkRegistrationEvent"/>
<referencedClass name="OCA\OpenRegister\Event\ObjectCreatingEvent"/>
<referencedClass name="OCA\OpenRegister\Event\ObjectCreatedEvent"/>
<referencedClass name="OCA\OpenRegister\Event\ObjectUpdatingEvent"/>
<referencedClass name="OCA\OpenRegister\Event\ObjectUpdatedEvent"/>
<!-- ADR-066 sibling-app leaf registration (RegisterDecisionsLeafListener). -->
<referencedClass name="OCA\OpenRegister\Event\RegisterLeafProvidersEvent"/>
<referencedClass name="OCA\OpenRegister\Service\Integration\LeafDescriptor"/>
<referencedClass name="OCA\OpenRegister\Event\ObjectDeletedEvent"/>
<referencedClass name="OCA\OpenRegister\Service\ObjectService"/>
<referencedClass name="OCA\OpenRegister\Service\TaskService"/>
<referencedClass name="OCA\OpenRegister\Service\ConfigurationService"/>
<referencedClass name="OCA\OpenRegister\Service\RegisterService"/>
<referencedClass name="OCA\OpenRegister\Service\FileService"/>
<referencedClass name="OCA\OpenRegister\Service\CalendarEventService"/>
<referencedClass name="OCA\OpenRegister\Mcp\IMcpToolProvider"/>
<referencedClass name="OCA\OpenRegister\AppHost\Controller\GenericDashboardController"/>
<referencedClass name="OCA\OpenRegister\AppHost\Controller\GenericHealthController"/>
<referencedClass name="OCA\OpenRegister\AppHost\Controller\GenericMetricsController"/>
<referencedClass name="OCA\OpenRegister\AppHost\Listener\GenericDeepLinkRegistrationListener"/>
<!-- Additional OCP infrastructure types used across the fleet -->
<referencedClass name="OCP\AppFramework\Bootstrap\IBootContext"/>
<referencedClass name="OCP\AppFramework\Bootstrap\IRegistrationContext"/>
<referencedClass name="OCP\AppFramework\Db\DoesNotExistException"/>
<referencedClass name="OCP\DB\Exception"/>
<referencedClass name="OCP\IGroup"/>
<referencedClass name="OCP\IUser"/>
<referencedClass name="OCP\Migration\IRepairStep"/>
<!-- Nextcloud server internals -->
<referencedClass name="OC"/>
<!-- GuzzleHttp (loaded via composer at runtime) -->
<referencedClass name="GuzzleHttp\Client"/>
<referencedClass name="GuzzleHttp\Exception\GuzzleException"/>
</errorLevel>
</UndefinedClass>
<UndefinedMagicMethod errorLevel="suppress"/>
<UnusedClass errorLevel="suppress"/>
<PossiblyUnusedMethod errorLevel="suppress"/>
<UnusedMethod errorLevel="suppress"/>
<UnusedProperty errorLevel="suppress"/>
<PossiblyUnusedParam errorLevel="suppress"/>
<UnusedDocblockParam errorLevel="suppress"/>
<UnusedVariable errorLevel="suppress"/>
<PossiblyUnusedReturnValue errorLevel="suppress"/>
<RedundantCondition errorLevel="suppress"/>
<RedundantFunctionCall errorLevel="suppress"/>
<RedundantCast errorLevel="suppress"/>
<InvalidDocblock errorLevel="suppress"/>
<MoreSpecificImplementedParamType errorLevel="suppress"/>
<MissingDependency errorLevel="suppress"/>
<UnevaluatedCode errorLevel="suppress"/>
<NoValue errorLevel="suppress"/>
<TypeDoesNotContainNull errorLevel="suppress"/>
<TypeDoesNotContainType errorLevel="suppress"/>
<InvalidArrayOffset errorLevel="suppress"/>
<InvalidCast errorLevel="suppress"/>
<InvalidArgument errorLevel="suppress"/>
<InvalidReturnType errorLevel="suppress"/>
<InvalidReturnStatement errorLevel="suppress"/>
<MismatchingDocblockReturnType errorLevel="suppress"/>
<EmptyArrayAccess errorLevel="suppress"/>
<ImplementedReturnTypeMismatch errorLevel="suppress"/>
<LessSpecificImplementedReturnType errorLevel="suppress"/>
<InvalidMethodCall errorLevel="suppress"/>
<UndefinedInterfaceMethod errorLevel="suppress"/>
<MissingTemplateParam errorLevel="suppress"/>
</issueHandlers>
<extraFiles>
<directory name="vendor/nextcloud/ocp" />
</extraFiles>
</psalm>