2
0
forked from Wavyzz/dolibarr
Commit Graph

495 Commits

Author SHA1 Message Date
MDW
1834c37c16 Qual: Fix phan notices (#31212)
* Qual: Fix phan notices

# Qual: Fix phan notices

Fix several phan notices related to classes with UnknownObject
classes.

* Qual: Fix phan notices

* Qual: Fix phan notices

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-10-03 19:40:34 +02:00
MDW
42bb4fbf3e Qual: Enable & fix or ignore Invalid DimOffset (#31176)
* Qual: Enable & fix or ignore Invalid DimOffset

# Qual: Enable & fix or ignore Invalid DimOffset

The Invalid DimOffset notices occur when array keys are defined and
the index used is not amongst the known array keys.

This PR enables these notices and fixes array definitions when needed,
or ignores the notices locally if it's a false positive, or in the
baseline.txt when it does not seem to be a false positive so that
it can be fixed later

* Nullable object typing in function signature not ok for 7.0/8.4

Can't user '?User' as argument type for PHP7.0 which is required by PHP8.4.
Therefore, removing the typing specification in the function definition

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-09-29 21:52:31 +02:00
MDW
0da4d51003 Qual: Fix multiple phan notifications (#31151)
* Qual: Fix notifications multiple files

# Qual: Fix notifications multiple files

Fixes to files with UnknownObject notices, fixing other
notices in these files as well

* Improve boxes typing

* Qual: Extend accepted types to reduce notices

* Fix type for GET/POST arguments of GETPOST* calls
2024-09-28 12:09:35 +02:00
Frédéric FRANCE
2583190e4a fix phpstan (#31146)
* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-09-26 22:21:57 +02:00
MDW
9a9e851494 Qual: Fix new UndeclaredGlobalVariable notices & enable (#30963)
* Qual: 🛟 Fix typing

Qual: Fix typing

Fix some typing currently failing ci in develop.

* Fix typing for grabimages

* Qual: Fix new UndeclaredGlobalVariable notices & enable

# Qual: Fix new UndeclaredGlobalVariable notices & enable

This fixes several new notices regarding 'undeclared globals' which
mostly correspond to missing initialisations in views and some real
bugs where the variable name was incorrect.
Some less obvious cases are unsolved and ignored (adherents/list,
and fourn/commande/card).

This is in preparation of fixing the notices in the other files
where the baseline was already set to ignore them where most just
need a phan-var-force declaration which will help with verifying
type compatibity and object member verifications
2024-09-16 01:50:58 +02:00
MDW
f89245b354 Qual: Fix some CommonIncoterm/DocGenerator/People typings (#30940)
* Fix extraparams property typing

* Fix argument typing

* Fix 'status' argument type in calls to dolGetButtonTitle

* Fix argument2 for price to 1 (was 2)

* Fix deliveryreceipt argument

* Fix PHPDoc dol_sort_array

* Fix range for int argument

* Fix arg type for str_pad and add some PHPDoc

* Fix natsort value for dol_sort_array

* Fix arguments on calls to dol_sort_array

* Reduce phpstan exceptions

* Qual: Add type hints for Stripe objects

# Qual: Add type hints for Stripe objects

Suggest the more specific implementation of the StripObject.

* Typing, initialisation

* Qual: Fix undeclared variables

* Update phan baseline

* Update baseline

* Qual: Add type hints for Stripe objects

# Qual: Add type hints for Stripe objects

Suggest the more specific implementation of the StripObject.

* Add PHPDoc for host class properties

* Ignore false positive (phan) for deprecated property

* Improve typing

* Update baseline
2024-09-13 03:09:23 +02:00
Laurent Destailleur
b1ee18864f Merge branch '20.0' of git@github.com:Dolibarr/dolibarr.git into develop 2024-09-12 01:43:43 +02:00
Laurent Destailleur
2bd701a87f Debug v20 2024-09-11 16:46:16 +02:00
Frédéric FRANCE
80d1f47d4d fix ignored phpstan (most of expects string, int given) (#30649)
* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

fix ignored phpstan

fix ignored phpstan

fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

fix ignored phpstan

fix ignored phpstan

fix ignored phpstan

fix ignored phpstan

fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* more ignore

* more ignore

* more ignore

* more ignore

* more ignore

* more ignore

* more ignore

* more ignore

* more ignore

* more ignore

* more ignore

* more ignore

* more ignore

* more ignore

* more ignore

* more ignore

* more ignore

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan
2024-09-05 16:05:37 +02:00
Frédéric FRANCE
97392965e1 fix ignored phpstan (#30645)
* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan

* fix ignored phpstan
2024-08-16 20:13:02 +02:00
MDW
3d04a7195c Qual: Updates regarding write_file(s) methods for Phan (#30511)
* Fix phpdoc for phpstan

* Add abstract write_file to ModelePDFContract

And update phpdoc for derived classes

* Fix typing for php_standard_actions writefile

* Improve phpdoc for write_files (& related)

* Add abstract write_file to ModelePDFBom

* Add abstract write_file to ModelePDFDeliveryOrder

* Add abstract write_file to ModeleExpenseReport

* Add abstract write_file to ModelePDFFicheinter

* Add abstract write_file to ModelePDFEvaluation

* Add abstract write_file to ModelePDFFactures

* Add abstract write_file to ModelePDFSuppliersInvoices

* Update ModelePDFProjects and ModelePDFTask related classes

* Qual: Add abstract write_file to ModelePdfExpedition

And update phpdoc for derived classes

* Qual: Correct reference (doc) to ModelePDFEvaluation

* Qual: Add abstract write_file to ModelePDFKnowledgeRecord

And update phpdoc for derived classes

* Qual: Add abstract write_file to ModelePDFMo & ModelePDFMouvement

And update phpdoc for derived classes

* Qual: Set typehint to ModelePDFFicheinter

* Qual: Add abstract write_file to ModelePDFCommandes

And update phpdoc for derived classes

* Qual: Add abstract write_file to ModelePDFPropales

And update phpdoc for derived classes

* Qual: Add abstract write_file to ModelePdfReception

And update phpdoc for derived classes

* Qual: Add abstract write_file to ModelePDFSuppliersOrders

And update phpdoc for derived classes

* Qual: Add abstract write_file to ModelePDFSuppliersOrders

And update phpdoc for derived classes

* Qual: Add abstract write_file to ModelePDFSuppliersPayments

And update phpdoc for derived classes

* Qual: Add abstract write_file to ModelePDFSupplierProposal

And update phpdoc for derived classes

* Qual: Add abstract write_file to ModelePDFWorkstation

And update phpdoc for derived classes

* Set typing for doc generator (commonobject)

* Improve typing for write_file

* Set typing for doc generator

* Qual: Add abstract write_file to ModelePDFMember

And update phpdoc for derived classes

* Qual: Add abstract write_file to ModelePDFProduct

And update phpdoc for derived classes

* Qual: Add abstract write_file to ModelePDFProductBatch

And update phpdoc for derived classes

* Qual: Add abstract write_file to ModelePDFRecruitmentJobPosition

And update phpdoc for derived classes

* Add abstract write_file to ModelePDFTicket

* Add abstract write_file to ModelePDFUser

* Add abstract write_file to ModelePDFUserGroup

* Add abstract write_file to ModeleThirdPartyDoc

* Add abstract write_file to ModelePDFAsset

* Find all incompatible classes

* Qual: update phan baseline

* Set typing for doc generator (commonobject)

* Qual: update phan baseline

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-08-14 19:21:10 +02:00
MDW
45ed4caeb2 Qual: Enable Phan Simplify rule and fix notices (#30537)
* Qual: Phan - Enable Simplyfy expression

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Qual: Simplify expression (phan notice)

* Update functions2.lib.php

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-08-07 03:05:02 +02:00
MDW
8b71242997 Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests (#30544)
* Remove PhanPluginDuplicateExpressionAssignmentOperation from baseline

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* fixup! Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

* Qual: Apply PhanPluginDuplicateExpressionAssignmentOperation as phan suggests

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-08-07 02:53:45 +02:00
Laurent Destailleur
49808847b9 Ignore phpstan false positive 2024-08-03 13:27:19 +02:00
Lucas Marcouiller
a4908abc8a New Main checkbox left column to manage this conf for each users (#30439)
Co-authored-by: Hystepik <lmarcouiller@nltechno.com>
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-07-26 05:01:26 +02:00
Frédéric FRANCE
29f223fd3c fix checkFunctionArgumentTypes (#30249)
* fix checkFunctionArgumentTypes

* fix checkFunctionArgumentTypes

* fix checkFunctionArgumentTypes

* fix checkFunctionArgumentTypes

* fix checkFunctionArgumentTypes

* fix checkFunctionArgumentTypes

* fix checkFunctionArgumentTypes

* fix checkFunctionArgumentTypes

* fix checkFunctionArgumentTypes
2024-07-04 17:47:31 +02:00
Christian Humpel
64f53fcc67 New: Add REST Api functionality for workstations (#30154) 2024-06-26 17:05:42 +02:00
Laurent Destailleur
3003b21f2a Fix phan 2024-05-22 03:21:54 +02:00
Laurent Destailleur
2a8db2255d Fix phan 2024-05-22 03:09:13 +02:00
Laurent Destailleur
3fcb281d4b Fix #29707 2024-05-22 02:57:30 +02:00
Laurent Destailleur
1b2bad3f42 NEW Add function to manipulate emojis 2024-05-14 18:19:48 +02:00
MDW
4168ddb1fa Fix typing with idate and casts 2024-03-22 09:51:53 +01:00
MDW
f824bbdc23 Fix null return by returning and logging error 2024-03-20 21:58:45 +01:00
MDW
e684b82a9b Fix arg type for substr with casts 2024-03-19 20:38:56 +01:00
MDW
bee172c4b7 Fix: Initialise $x to fix PhanUndeclaredVariableAssignOp & optimize 2024-03-18 13:12:47 +01:00
MDW
d3e6a83d70 Fix PhanTypeMismatchArgumentInternal - apply casts tofix 2024-03-18 04:03:51 +01:00
Laurent Destailleur
e0d7948d91 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2024-03-13 11:06:48 +01:00
Laurent Destailleur
930af6b838 Doc 2024-03-13 10:54:20 +01:00
MDW
d8a785fa2b FIX get_string_between
# FIX get_string_between

Noticed that the typing of the arguments was incorrect and then found
the implementation suspicious.  The implemented test confirmed that it
was flawed.  Fixed.

Apparently this method is used in get_next_value .
2024-03-13 02:58:59 +01:00
Frédéric France
7ad8f6b074 clean code and phpdoc 2024-03-11 23:18:01 +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
Frédéric FRANCE
3f8376c2b8 fix odt templates lost (#28411) 2024-02-25 22:08:45 +01:00
MDW
8655d5a86b QUAL Use phan to help detect new issues (#27706)
* Qual: Add phan flow

- Add phan configuration (config, baseline, stubs);
- Add github action;
- Update apstats.php.

* Add directives to ignore false phan notices

* Qual: Add typing hints for extrafields TPL files

# Qual: Add typing hints for extrafields TPL files

Add typing hints for phan on view files

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-02-21 18:14:29 +01:00
notmarrco
2c3eff1896 NEW: API Add some api endpoints (#25126)
* feat(api): Add updateLine to Bank api + add salaries api

* feat(api): Add "deleteLine" to bank api

* fix(api): Remove unneeded mandatory field "salary"

* feat(api): Add PaymentSalaries and PaymentExpenseReports API

* fix(bankaccount): Fix bad phpdoc return type

* fix(bankaccount): Fix bad phpdoc return type and comments

* add updateLabel function to AccountLine

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-02-19 17:03:07 +01:00
MDW
f5dd7d7c93 FIX: Fix unneeded access outside open_basedir when looking for modules (#28237)
* FIX: Fix unneeded access outside open_basedir when looking for modules

# FIX: Fix unneeded access outside open_basedir when looking for modules

Change the order in which the if conditions are tested so that an is_dir("dir/..") is avoided
by first testing if the subpath starts with a dot.

Also changed uppercased the first 3 letters of the file before comparing to CVS.

Finally, improved the typing hint and documentation.

The PHPUNIT test failed like this:

```
35) ExportTest::testExportModulesDatasets
is_dir(): open_basedir restriction in effect. File(D:\a\dolibarr\dolibarr\htdocs/..) is not within the allowed path(s): (D:\a\dolibarr\dolibarr\htdocs;D:\a\dolibarr\dolibarr\documents;D:\a\dolibarr\dolibarr\test;D:\a\dolibarr\dolibarr\dev\initdemo;c:\tools\php)

D:\a\dolibarr\dolibarr\htdocs\core\lib\functions2.lib.php:100
D:\a\dolibarr\dolibarr\htdocs\exports\class\export.class.php:119
D:\a\dolibarr\dolibarr\test\phpunit\ExportTest.php:463
```

* Fix spelling
2024-02-18 15:09:01 +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
9d7d74babc FIX Use of MAIN_BUILD_LOGIN_RULE and
MAIN_USER_SEPARATOR_CHAR_FOR_GENERATED_LOGIN
2024-02-08 16:28:24 +01:00
Laurent Destailleur
eb4f53665d Merge branch '19.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	.github/workflows/pre-commit.yml
	ChangeLog
	dev/tools/codespell/codespell-lines-ignore.txt
	htdocs/comm/mailing/card.php
	htdocs/contact/card.php
	htdocs/langs/en_US/admin.lang
	htdocs/modulebuilder/template/core/modules/mailings/mailinglist_mymodule_myobject.modules.php
2024-02-07 18:30:10 +01:00
Laurent Destailleur
fedbc0f08e Fix use of not existing object 2024-02-02 12:51:11 +01:00
VESSILLER
b39e0c2ae9 Merge branch 'develop' of github.com:Dolibarr/dolibarr into new-webportal-module 2024-01-23 17:06:44 +01:00
MDW
aed39b73e5 Fix: PHP8.1 strftime deprecation -> dol_print_date
# Fix: PHP8.1 strftime deprecation -> dol_print_date

Change strftime to dol_print_date to work around deprecation
2024-01-18 17:01:30 +01:00
Laurent Destailleur
4db074216c Merge branch '19.0' of git@github.com:Dolibarr/dolibarr.git into develop 2024-01-18 16:04:49 +01:00
Laurent Destailleur
055a598584 Merge branch '19.0' of git@github.com:Dolibarr/dolibarr.git into 19.0 2024-01-18 16:04:23 +01:00
Laurent Destailleur
d9858d9bb7 Merge branch '17.0' of git@github.com:Dolibarr/dolibarr.git into 18.0 2024-01-18 16:00:26 +01:00
Laurent Destailleur
a2cdfa5492 Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 17.0 2024-01-18 15:59:40 +01:00
Laurent Destailleur
387a06fdc5 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2024-01-18 15:59:10 +01:00
Laurent Destailleur
7c0ccba344 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2024-01-18 15:58:19 +01:00
Eric Seigne
5a04b2393d end fix #10417 : custom payment number for supplier invoices 2024-01-15 18:43:17 +01:00
MDW
89004f7e03 Qual: Spelling htdocs/core (#27491)
Highlights:
- initialY in pdf_standard.modules.php was unused
  - remove (otherwise -> initially) (+same in other file)
2024-01-13 19:48:20 +01:00
VESSILLER
cd7e4d8726 Merge branch 'develop' of github.com:Dolibarr/dolibarr into new-webportal-module 2024-01-08 10:48:09 +01:00