Commit graph

70 commits

Author SHA1 Message Date
Alexandre Janniaux
163c51ae31
NEW debugbar: Add backtrace capture for database query failures (#36612)
* debugbar: Add backtrace capture for database query failures

Implements backtrace forwarding to capture and display backtraces when
database queries fail, making it easier for developers to identify the
source of database errors.

Backtrace are captured in TraceableDB::endTracing() when queries fail
using debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS) and stored to be
fowarded to the DolQueryCollector that will expose it to the debugbar
integration.

Because of that, the backtrace is now captured at the correct location,
ie. when the query fails, rather than when the error is retrieved,
ensuring it shows the actual application code that triggered the
problematic query.

This is particularly useful for debugging MySQL to PostgreSQL
compatibility issues, module development and maintenance, and quickly
identifying query origins during development. In particular, paired with
the list and time profiling of each request, it will allow finding the
location where queries are not properly optimized.

Before this patch, it was possible to try and find snippets from the
queries but because queries are generated at runtime, it was tedious and
could lead to the wrong location.

Related to #34050

* debugbar: Add SQL query backtrace

Extends the debugbar SQL widget with backtrace display capabilities.

To keep vendor files pristine, a custom widget (TracingSQLQueriesWidget)
extends the vendor SQLQueriesWidget using DOM manipulation to inject
Dolibarr-specific features after parent render completes.

The widget intercepts the parent's data binding callback via
wrapDataBinding() to enhance rendered queries with backtrace buttons.
This patch pattern depends on php-debugbar internals but might break if
the vendor API changes, without breaking the rendering done by
php-debugbar.

A tracing toggle icon in the status bar allows switching between
tracing failed queries only (default, minimal overhead) and tracing
all queries. The setting persists via cookie (debugbar_full_tracing)
which the PHP backend reads to decide whether to capture backtraces.

Custom styles in widgets.css is for the tracing state (eye/eye-slash
icons) and so as to format the backtrace display within a frame and
using monospace font.

Closes #34050
2026-05-03 16:26:33 +02:00
Laurent Destailleur
00136cf9e3 Another step for #37171 2026-02-11 03:27:42 +01:00
Laurent Destailleur
81527a9fe9 Clean code 2025-11-18 12:03:23 +01:00
Frédéric FRANCE
35d6bc8409
add missing translation 2025-03-03 14:40:30 +01:00
MDW
f250f7caa5
Qual: Fix Phan notices
# Qual: Fix phan notices
2025-01-27 19:15:09 +01:00
MDW
67d932e7de
Qual: Fix phpdoc for *ArrayMethod* args/return values (non api_) (#31719) 2024-11-08 14:43:12 +01:00
MDW
278d301f32
Qual: Fix phan/phpstan notices in class files (part 6) (#31634)
* Qual: Fix notices for paymentdonation...workstationusergroup.class

* Qual: Fix PhanPluginRedundantReturnComment, update baseline

* Qual: Complete array phpdoc for properties
2024-11-06 23:57:45 +01:00
Frédéric FRANCE
1adc883b56
add baseline exclude for phpstan (#31632)
* add baseline exclude for phpstan

* update

* update

* update

* update

* update

* merge

* restore one filter

* delete old errors

* fix

* fix

* fix

* $moreforfilter can t be empty

* fix

* enable check

* refresh baseline

* add phpdoc

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* update phpstan baseline

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-11-04 23:53:20 +01:00
MDW
b91c99b18a
Qual: Fix phan/phpstan notices in class files (part 3) (#31578)
* fix phpstan in conf class (#31630)

* fix phpstan

* fix phan

* Fix merge

* Qual: Avoid notification with typing hint

* Qual: Fix notices link.class

* Qual: Fix notices link..socialneetworkmanager.class and DoliDb->DoliDB

* Qual: Fix notices for link..utils.class

* Qual: Fix notices for db classes

* Update translate.class.php

* Update translate.class.php

---------

Co-authored-by: Frédéric FRANCE <frederic34@users.noreply.github.com>
Co-authored-by: Laurent Destailleur <eldy@users.sourceforge.net>
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-10-29 22:44:47 +01:00
MDW
be0f28245c
Qual: Fix phan notices wrt main.inc.php, menus (#30633)
* Qual: Fix phan notices wrt main.inc.php, menus

# Qual: Fix phan notices wrt main.inc.php, menus

This fixes phan notices stemming from main.inc.php and the menu classes.

* Qual: Fix phpstan notice that dol_authmode always set

# Qual: Fix phpstan notice that dol_authmode always set

dol_authmode is always set because it is now initialised.
2024-08-14 14:05:56 +02:00
MDW
d6948077b2
Qual: Fix spelling/update .pre-commit configuration (versions) (#30546)
* Qual: Update pre-commit configuration

* Qual: Update spelling

* Ignore use of deprecated constant
2024-08-07 01:20:43 +02:00
MDW
bec5ff4749
Fix: Enforce/use int nature of BookKeeping(Line)::$piece_num, fix hooks typings (#29298)
* Fix: Enforce/use int nature of BookKeeping(Line)::$piece_num

* Fix typing in hookmanager class

* Improve DolHooksCollector phpdoc

* Fix PhanTypePossiblyInvalidDimOffset by testing index's existence

* Ignore PhanTypePossiblyInvalidDimOffset that phan can not detect

* Allow  to be null, initialise instead of unset
2024-04-09 23:21:28 +02:00
Laurent Destailleur
66dd9d503a Fix doxygen 2024-04-09 20:34:47 +02:00
Laurent Destailleur
46e21a0b2d Removed dead code 2024-04-09 03:50:46 +02:00
Laurent Destailleur
b172640ae5 Debug v20 2024-04-09 03:38:38 +02:00
jyhere
4880ec1b77
NEW: Hooks tab in debugbar (#24992)
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-04-09 03:09:10 +02:00
Laurent Destailleur
caf6367a4e NEW Add the process and user ID into log 2024-03-26 14:14:11 +01:00
MDW
22e370c011
Fix PhanTypeSuspiciousStringExpression 2024-03-19 02:43:34 +01:00
MDW
a408288ba1
Fix & enable PhanPluginUnknownClosureParamType
# Fix & enable PhanPluginUnknownClosureParamType

Typing of anonymous functions to fix this notice.
Optimised some minor things.
2024-03-14 22:42:26 +01:00
MDW
abbec034c6
Qual: Several typing hints/some fixes. (#28483)
* Update documentation to improve static tool messages

* Suppress PhanPluginSuspiciousParamOrder

* Fix typing hint

* Fix typing hint (number->int)

* Fix typing hint (PDF->TCPDF)

* Fix typing hint (PDF->TCPDF)

* Modify code to hint typing check

* Correct Noop statement (createfromclone)

* Remove useless if/else with same result

* Suppress PhanRedefineFunctionInternal

* Suppress PhanParamSuspiciousOrder

* Suppress PhanPluginDuplicateArrayKey

* Suppress multiple phan messages

* Ignore PhanPluginSuspiciousParamOrder

* Add phan typing

* Remove useless if statement

* Remove useless if/else condition

* Remove useless if

* Remove useless if

* Join duplicate if/else statements

* Fix useless if

* Fix useless if

* Fix phan notice by optimizing 2**$i to 1<<$i
2024-02-28 15:36:29 +01:00
MDW
8592f6ba49
Qual: Apply automatic phan fixes (deprecations, unneeded imports) (#28154)
* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).

* Qual: Apply automatic phan fixes (deprecations, unneeded imports)

# Qual: Apply automatic phan fixes (deprecations, unneeded imports)

This applies automatic fixes by phan for deprecated functions, unneeded imports).
2024-02-13 21:46:12 +01:00
Laurent Destailleur
ccaae7ab24 Clean code 2024-01-05 03:41:22 +01:00
Laurent Destailleur
7785ae93a1 Fix php8.2 warnings 2023-11-27 11:41:05 +01:00
Laurent Destailleur
4f4ede2e32 Fix php8.2 warnings 2023-10-15 18:14:14 +02:00
Laurent Destailleur
382f45ec14 Clean code 2023-04-30 03:36:02 +02:00
Laurent Destailleur
6b01edbf01 Hide PHP_AUTH_PW into debugbar 2023-03-19 11:06:48 +01:00
FLIO
29e56ab3cf fix (qodana) edit error and merge develop to be update 2023-02-21 17:51:24 +01:00
Laurent Destailleur
08e78f77bd Fix qodana 2023-02-20 02:37:11 +01:00
FLIO
156922fc51 Fix (qodana) Incompatible return type 2023-02-14 14:09:56 +01:00
Frédéric FRANCE
35f16e821d
fix php8.2 warnings 2023-01-25 21:56:49 +01:00
Laurent Destailleur
fbc74cd571 Fix missing doxygen doc 2023-01-14 15:57:12 +01:00
rsanjoseo
39863897b7 Add a new tab with php errors and warnings to the debug bar 2022-09-18 11:30:41 +02:00
Laurent Destailleur
97acf949fc Clean message on email limit 2022-07-13 13:39:16 +02:00
jyhere
777de32736
Add sql queries duration to debugbar 2022-06-08 11:20:16 +02:00
Laurent Destailleur
9f379dfcf4 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/core/modules/modCashDesk.class.php
	htdocs/debugbar/class/DataCollector/DolLogsCollector.php
	htdocs/langs/en_US/admin.lang
2022-05-03 12:17:54 +02:00
Laurent Destailleur
0cc3eec599 Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-05-03 11:55:45 +02:00
Laurent Destailleur
36fdee3337 Merge branch '12.0' of git@github.com:Dolibarr/dolibarr.git into 13.0 2022-05-03 11:54:57 +02:00
Laurent Destailleur
a254412c61 Merge branch '11.0' of git@github.com:Dolibarr/dolibarr.git into 12.0
Conflicts:
	htdocs/debugbar/class/DataCollector/DolLogsCollector.php
2022-05-03 11:54:28 +02:00
Laurent Destailleur
b5f887b3e4 Fix DEBUGBAR_USE_LOG_FILE 2022-05-03 11:52:32 +02:00
Lucas Marcouiller
bc4373a5de Merge branch 'develop' of github.com:Dolibarr/dolibarr into develop#4 2021-10-23 11:47:06 +02:00
Lucas Marcouiller
3a9ce1476d fix error 2021-10-23 11:45:27 +02:00
Lucas Marcouiller
6ccd8ce83a Fix : PHP errors 8.0 2021-10-23 11:45:06 +02:00
Frédéric FRANCE
2780bb73c3
fix warning 2021-10-22 21:57:34 +02:00
Laurent Destailleur
8a62d97b89 Remove one thousand of useless files 2021-04-12 15:57:16 +02:00
UT from dolibit
58dda89b7a
Create index.html 2021-04-02 20:49:00 +02:00
Frédéric FRANCE
ef28a76ad0
code syntax datapolicy dav debugbar directories 2021-02-25 22:09:10 +01:00
Scrutinizer Auto-Fixer
7f52920716 Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2020-10-31 13:32:18 +00:00
Laurent Destailleur
a24071492e Start fix for php8 compatibility 2020-10-30 05:56:07 +01:00
Laurent Destailleur
3e75cbbeb5 Fix for smartphone 2020-10-16 14:50:36 +02:00
Laurent Destailleur
520645a02c Renamed all methods valide() into validate() 2020-10-15 10:15:37 +02:00