3 autoloader="test/bootstrap-static.php"
5 reportMixedIssues="true"
7 resolveFromConfigFile="true"
8 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9 xmlns="https://getpsalm.org/schema/config"
10 xsi:schemaLocation="https://getpsalm.org/schema/config vendor/vimeo/psalm/config.xsd"
11 errorBaseline="psalm-baseline.xml"
14 <directory name="libraries"/>
15 <directory name="setup"/>
16 <directory name="test/classes"/>
17 <directory name="test/selenium"/>
18 <file name="js/messages.php"/>
19 <file name="index.php"/>
20 <file name="show_config_errors.php"/>
21 <file name="url.php"/>
23 <directory name="vendor"/>
24 <directory name="libraries/cache"/>
26 <ignoreFiles allowMissingFiles="true">
27 <file name="config.inc.php"/>
32 <file name="test/stubs/uploadprogress.stub"/>
36 <pluginClass class="Psalm\PhpUnitPlugin\Plugin"/>
40 <var name="cfg" type="array{
41 AllowUserDropDatabase: bool,
42 blowfish_secret: string,
46 CookieSameSite: 'Lax'|'Strict'|'None',
48 DBG: array{sql: bool, sqllog: bool, demo: bool, simple2fa: bool},
49 DefaultTabDatabase: 'structure'|'sql'|'search'|'operations',
50 DefaultTabServer: 'welcome'|'databases'|'status'|'variables'|'privileges',
51 DefaultTabTable: 'structure'|'sql'|'search'|'insert'|'browse',
52 DisableMultiTableMaintenance: bool,
53 enable_drag_drop_import: bool,
54 EnableAutocompleteForTablesAndColumns: bool,
55 environment: 'production'|'development',
56 ExecTimeLimit: 0|positive-int,
58 FirstLevelNavigationItems: positive-int,
59 GridEditing: 'double-click'|'click'|'disabled',
61 IgnoreMultiSubmitErrors: bool,
62 InitialSlidersState: 'open'|'closed'|'disabled',
63 LimitChars: positive-int,
64 LoginCookieStore: 0|positive-int,
65 LoginCookieValidity: positive-int,
66 LoginCookieValidityDisableWarning: bool,
67 MaxDbList: positive-int,
68 MaxCharactersInDisplayedSQL: positive-int,
69 MaxRows: positive-int,
70 MaxTableList: positive-int,
72 NavigationDisplayLogo: bool,
73 NavigationDisplayServers: bool,
74 NavigationLinkWithMainPanel: bool,
75 NavigationLogoLink: string,
76 NavigationLogoLinkWindow: 'main'|'new',
77 NavigationTreeAutoexpandSingleDb: bool,
78 NavigationTreeDbSeparator: string,
79 NavigationTreeEnableGrouping: bool,
80 NavigationTreePointerEnable: bool,
81 NavigationTreeTableSeparator: string|string[]|false,
82 NavigationWidth: 0|positive-int,
83 NumFavoriteTables: 0|positive-int,
84 PmaNoRelation_DisableWarning: bool,
85 ProtectBinary: 'blob'|'noblob'|'all'|false,
89 RepeatCells: 0|positive-int,
90 SendErrorReports: 'ask'|'always'|'never',
92 AllowDeny: array{order: ''|'deny,allow'|'allow,deny'|'explicit', rules: string[]},
93 AllowNoPassword: bool,
95 auth_type: 'config'|'http'|'signon'|'cookie',
103 tracking_default_statements: string,
107 ServerDefault: 0|positive-int,
110 ShowChgPassword: bool,
112 ShowDatabasesNavigationAsTree: bool,
113 ShowFieldTypesInDataEditView: bool,
114 ShowFunctionFields: bool,
116 ShowServerInfo: bool,
119 SkipLockedTables: bool,
120 SuhosinDisableWarning: bool,
122 TranslationWarningThreshold: int,
128 <var name="containerBuilder" type="Symfony\Component\DependencyInjection\ContainerBuilder"/>
129 <var name="dbi" type="PhpMyAdmin\DatabaseInterface"/>
130 <var name="GLOBALS" type="array{
133 cached_affected_rows: int|numeric-string,
135 AllowArbitraryServer: bool,
136 AllowThirdPartyFraming: bool|'sameorigin',
137 ArbitraryServerRegexp: string,
138 AvailableCharsets: string[],
139 BrowseMarkerEnable: bool,
140 BrowsePointerEnable: bool,
144 CaptchaLoginPublicKey: string,
145 CaptchaRequestParam: string,
146 CaptchaResponseParam: string,
147 CharEditing: 'input'|'textarea',
148 CharTextareaCols: positive-int,
149 CharTextareaRows: positive-int,
150 CodemirrorEnable: bool,
153 ConsoleEnterExecutes: bool,
154 DBG: array{sql: bool, sqllog: bool, demo: bool, simple2fa: bool},
155 DefaultForeignKeyChecks: 'default'|'enable'|'disable',
156 DefaultQueryDatabase: string,
157 DefaultQueryTable: string,
158 DefaultTabDatabase: 'structure'|'sql'|'search'|'operations',
159 DefaultTabServer: 'welcome'|'databases'|'status'|'variables'|'privileges',
160 DefaultTabTable: 'structure'|'sql'|'search'|'insert'|'browse',
161 DefaultTransformations: array{
162 Bool2Text: array{string, string},
163 DateFormat: array{0|positive-int, string, 'local'|'utc'},
164 External: array{int, string, int, int},
165 Hex: array{0|positive-int},
166 Inline: array{0: 0|positive-int, 1: 0|positive-int, wrapper_link: string|null, wrapper_params: array<array-key, string>},
167 PreApPend: array{string, string},
168 Substring: array{0|positive-int, 'all'|int, string},
169 TextImageLink: array{string|null, 0|positive-int, 0|positive-int},
170 TextLink: array{string|null, string|null, bool|null}
172 DisableMultiTableMaintenance: bool,
173 DisplayServersList: bool,
174 enable_drag_drop_import: bool,
175 ExecTimeLimit: 0|positive-int,
176 FirstLevelNavigationItems: positive-int,
177 ForeignKeyDropdownOrder: array{0: 'content-id'|'id-content', 1?: 'content-id'|'id-content'},
178 ForeignKeyMaxLimit: positive-int,
179 GridEditing: 'double-click'|'click'|'disabled',
181 HideStructureActions: bool,
182 IgnoreMultiSubmitErrors: bool,
184 InitialSlidersState: 'open'|'closed'|'disabled',
185 InsertRows: positive-int,
186 LimitChars: positive-int,
187 LinkLengthLimit: positive-int,
189 LoginCookieDeleteAll: bool,
190 LoginCookieRecall: bool,
191 LoginCookieStore: 0|positive-int,
192 LoginCookieValidity: positive-int,
193 LongtextDoubleTextarea: bool,
194 MaxDbList: positive-int,
195 MaxCharactersInDisplayedSQL: positive-int,
196 MaxExactCount: positive-int,
197 MaxExactCountViews: 0|positive-int,
198 MaxNavigationItems: positive-int,
199 MaxTableList: positive-int,
200 maxRowPlotLimit: positive-int,
201 MaxRows: positive-int,
202 MaxSizeForInputField: positive-int,
203 MinSizeForInputField: 0|positive-int,
204 MysqlMinVersion: array{internal: int, human: string},
205 MysqlSslWarningSafeHosts: string[],
207 NavigationLinkWithMainPanel: bool,
208 NavigationTreeDbSeparator: string,
209 NavigationTreeDefaultTabTable: 'structure'|'sql'|'search'|'insert'|'browse',
210 NavigationTreeDefaultTabTable2: 'structure'|'sql'|'search'|'insert'|'browse'|'',
211 NavigationTreeDisplayDbFilterMinimum: positive-int,
212 NavigationTreeDisplayItemFilterMinimum: positive-int,
213 NavigationTreeEnableExpansion: bool,
214 NavigationTreeEnableGrouping: bool,
215 NavigationTreeShowEvents: bool,
216 NavigationTreeShowFunctions: bool,
217 NavigationTreeShowProcedures: bool,
218 NavigationTreeShowTables: bool,
219 NavigationTreeShowViews: bool,
220 NavigationTreeTableLevel: positive-int,
221 NavigationTreeTableSeparator: string|string[]|false,
222 NumFavoriteTables: 0|positive-int,
223 NumRecentTables: 0|positive-int,
225 PDFDefaultPageSize: string,
226 PDFPageSizes: string[],
227 PersistentConnections: bool,
228 PropertiesNumColumns: positive-int,
229 ProtectBinary: 'blob'|'noblob'|'all'|false,
230 QueryHistoryDB: bool,
231 QueryHistoryMax: positive-int,
232 RelationalDisplay: 'K'|'D',
233 RememberSorting: bool,
234 RepeatCells: 0|positive-int,
235 ReservedWordDisableWarning: bool,
236 RetainQueryBox: bool,
237 RowActionLinks: 'left'|'right'|'both'|'none',
238 RowActionLinksWithoutUnique: bool,
239 SaveCellsAtOnce: bool,
240 SendErrorReports: 'ask'|'always'|'never',
242 auth_type: 'config'|'http'|'signon'|'cookie',
243 bookmarktable: string|false,
244 central_columns: string|false,
245 column_info: string|false,
246 designer_settings: string|false,
248 export_templates: string|false,
249 favorite: string|false,
250 history: string|false,
252 MaxTableUiprefs: positive-int,
253 navigationhiding: string|false,
254 only_db: string|string[],
256 pdf_pages: string|false,
259 recent: string|false,
260 relation: string|false,
261 savedsearches: string|false,
262 SessionTimeZone: string,
263 SignonCookieParams: array{lifetime: 0|positive-int, path: string, domain: string, secure: bool, httponly: bool, samesite?: 'Lax'|'Strict'},
264 SignonScript: string,
265 SignonSession: string,
267 table_coords: string|false,
268 table_info: string|false,
269 table_uiprefs: string|false,
270 tracking: string|false,
271 tracking_add_drop_database: bool,
272 tracking_add_drop_table: bool,
273 tracking_add_drop_view: bool,
274 tracking_default_statements: string,
275 tracking_version_auto_create: bool,
277 userconfig: string|false,
278 usergroups: string|false,
282 ServerDefault: 0|positive-int,
285 ShowBrowseComments: bool,
286 ShowColumnComments: bool,
288 ShowDatabasesNavigationAsTree: bool,
289 ShowDbStructureCharset: bool,
290 ShowDbStructureComment: bool,
291 ShowDbStructureCreation: bool,
292 ShowDbStructureLastCheck: bool,
293 ShowDbStructureLastUpdate: bool,
294 ShowFieldTypesInDataEditView: bool,
295 ShowFunctionFields: bool,
297 ShowPropertyComments: bool,
300 TextareaAutoSelect: bool,
301 TextareaCols: positive-int,
302 TextareaRows: positive-int,
303 ThemeDefault: string,
304 ThemePerServer: bool,
305 TitleDatabase: string,
306 TitleDefault: string,
309 UserprefsDeveloperTab: bool,
310 UserprefsDisallow: string[],
316 charset_connection: string,
319 collation_connection: string,
320 complete_query: string,
321 compression: 'none'|'zip'|'gzip',
323 config: PhpMyAdmin\Config,
324 ConfigFile: PhpMyAdmin\Config\ConfigFile,
327 csv_enclosed: string,
329 csv_separator: string,
330 csv_terminated: string,
333 dbi: PhpMyAdmin\DatabaseInterface,
334 dbs_to_test: string[]|false,
335 dblist: PhpMyAdmin\Database\DatabaseList,
336 display_query: string,
339 error_message: string,
340 errorHandler: PhpMyAdmin\ErrorHandler,
341 excel_edition: 'win'|'mac_excel2003'|'mac_excel2008',
342 file_handle: resource|null,
348 import_file_name: string,
349 import_run_buffer: array,
351 is_create_db_priv: bool,
352 is_reload_priv: bool,
355 latex_data_caption: string,
356 latex_data_continued_caption: string,
357 latex_data_label: string,
359 latex_structure_caption: string,
360 latex_structure_continued_caption: string,
361 latex_structure_label: string,
364 message: PhpMyAdmin\Message,
369 onfly_compression: bool,
370 output_charset_conversion: bool,
371 output_kanji_conversion: bool,
372 plugin_param: string|array{export_type: string, single_table: bool},
373 plugin_scripts: string[],
374 pma_auth_server: string,
375 PMA_PHP_SELF: string,
377 querytime: float|int,
379 request: PhpMyAdmin\Http\ServerRequest,
380 save_on_server: bool,
383 showtable: array<string, string|null>,
384 sql_compatibility: 'NONE'|'ANSI'|'DB2'|'MAXDB'|'MYSQL323'|'MYSQL40'|'MSSQL'|'ORACLE'|'TRADITIONAL',
385 sql_constraints: string,
386 sql_constraints_query: string,
387 sql_drop_foreign_keys: string,
388 sql_if_not_exists: bool,
390 sql_insert_syntax: 'complete'|'extended'|'both'|'none',
391 sql_max_query_size: 0|positive-int,
393 sql_structure_or_data: 'structure'|'data'|'structure_and_data',
394 sql_type: 'INSERT'|'UPDATE'|'REPLACE',
397 tbl_storage_engine: string,
399 token_mismatch: bool,
400 token_provided: bool,
403 xml_export_triggers: bool,
404 xml_export_views: bool
406 <var name="maximum_time" type="0|positive-int"/>
407 <var name="PMA_PHP_SELF" type="string"/>