diff --git a/ChangeLog b/ChangeLog index 29418815dd1..b6424aec27a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -218,6 +218,68 @@ Following changes may create regressions for some external modules, but were nec * The method getCheckOption() and deleteCPUser() of class Holiday has been removed (it was not used) + +FIX: #20304 propaldates update +FIX: #24508 Label not reported when creating a supplier invoice template (#25340) +FIX: #24569 filters on stockadate page +FIX: #24631 Filter on categories of warehouses faulty +FIX: #24695 +FIX: #24756 Total sum on annual report bank +FIX: #24918 +FIX: #24985 Societe - Function thirdparty merging not working with module whose tables are not deployed by default +FIX: #24991 +FIX: #24997 Update slovakia vat rate +FIX: #25223 +FIX: ability to disable forcing focus on select2 to avoid side effects +FIX: Add hidden conf to add extrafields in canelle template : INVOICE_ADD_EXTRAFIELD_IN_NOTE +FIX: Add/Update required modules for thirdparties (by categ) & partnership +FIX: ajax on off setup type +FIX: avoid php8 warning +FIX: Bad management of localtax on TakePOS due to typo error in var name +FIX: can define empty qty by default when create object line +FIX: can not remove the last selected value with checkbox +FIX: case special char for password in email admin page +FIX: Change $key into $tmpkey +FIX: CommonObject::getRights() +FIX: commonobject: getRights() did not find rights correctly for objects built using modulebuilder +FIX: CVE reported by BELABED Skander (Akerva) +FIX: CVE XSS on company name reported by Belabed Skander from Akerva +FIX: decimal values were not possible on shipment quantities (introduced by #24882) +FIX: default value for condition of payment on proposal +FIX: default values were not set for specimen objects +FIX: Delete of bank of a thirdparty must need the edit thirdparty perm +FIX: display project tasks list columns (#24557) +FIX: dol_print_error parameters on ticket fetch method (#25318) +FIX: dol_trunc may not have the desired behaviour for truncating a cryptographic initialiszation vector, for instance when MAIN_DISABLE_TRUNC is used +FIX: Donation - Missing Language key +FIX: error expedition qty 0 +FIX: extrafield quick edit not working on products +FIX: fatal error on Stripe setup page and security when terminal not used +FIX: Fatal Error PHP 8 : division by 0 (#25384) +FIX|Fix Change strpos for expedition and receipt in files.lib.php $haystack and $needle inversion +FIX: Fix main and left menu info for the root menu of the list of accountancy journal +FIX: Homogenise handling of null extrafield value in create/update +FIX: Langs was not loaded for extrafields error +FIX: Missing localtaxes on receipt in TakePOS +FIX: no change on thirdparties.modules.php required modules +FIX: OAUth2 module for Google with scopes for people and calendar +FIX: php8.1 warning on lists with total due to unset array key (#25460) +FIX: quickedit code missing on product card +FIX: Selection of customer on second or more parallel sell in TakePOS +FIX: Showing bank account on list for direct debit +FIX: SQL migration file +FIX: String was compared to an integer +FIX: to avoid wrong path of file (#25320) +FIX: Total sum on annual report bank +FIX: translation extrafield mass action #24080 +FIX: Try to fix the date of invoice on TakePOS on eastern timezone +FIX: TVA calc option must be the same on update line as on create line +FIX: Update mouvementstock.class.php (#25396) +FIX: update product on translation update +FIX: use dol_substr instead of dol_trunc for truncating openssl initialization vector +FIX: We should always be able to filter on action type no matter if we can't read actions of others (#24462) +FIX: wrong var name + ***** ChangeLog for 17.0.2 compared to 17.0.1 ***** FIX: Change strpos for expedition and receipt in files.lib $haystack and $needle inversion FIX: Add hidden conf to add extrafields in canelle template : INVOICE_ADD_EXTRAFIELD_IN_NOTE diff --git a/phpstan.neon b/phpstan.neon index 129ca462921..c55b9327da1 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -1,175 +1,23 @@ parameters: - bootstrap: %currentWorkingDirectory%/build/phpstan/bootstrap.php - excludes_analyse: - - %currentWorkingDirectory%/htdocs/includes/restler/framework/Luracast/Restler/AutoLoader.php - - %currentWorkingDirectory%/htdocs/includes/* - - %currentWorkingDirectory%/htdocs/*/class/api_* - - %currentWorkingDirectory%/htdocs/*/canvas/*/tpl/*.tpl.php - autoload_directories: - - %currentWorkingDirectory%/htdocs/accountancy/class - - %currentWorkingDirectory%/htdocs/adherents/class - - %currentWorkingDirectory%/htdocs/api/class - - %currentWorkingDirectory%/htdocs/asset/class - - %currentWorkingDirectory%/htdocs/blockedlog/class - - %currentWorkingDirectory%/htdocs/bom/class - - %currentWorkingDirectory%/htdocs/bookmarks/class - - %currentWorkingDirectory%/htdocs/cashdesk/class - - %currentWorkingDirectory%/htdocs/categories/class - - %currentWorkingDirectory%/htdocs/comm/action/class - - %currentWorkingDirectory%/htdocs/comm/propal/class - - %currentWorkingDirectory%/htdocs/commande/class - - %currentWorkingDirectory%/htdocs/compta/bank/class - - %currentWorkingDirectory%/htdocs/compta/cashcontrol/class - - %currentWorkingDirectory%/htdocs/compta/deplacement/class - - %currentWorkingDirectory%/htdocs/compta/facture/class - - %currentWorkingDirectory%/htdocs/compta/localtax/class - - %currentWorkingDirectory%/htdocs/compta/paiement/class - - %currentWorkingDirectory%/htdocs/compta/prelevement/class - - %currentWorkingDirectory%/htdocs/compta/sociales/class - - %currentWorkingDirectory%/htdocs/compta/tva/class - - %currentWorkingDirectory%/htdocs/conf - - %currentWorkingDirectory%/htdocs/contact/class - - %currentWorkingDirectory%/htdocs/contrat/class - - %currentWorkingDirectory%/htdocs/core/class - - %currentWorkingDirectory%/htdocs/core/lib - - %currentWorkingDirectory%/htdocs/core/triggers - - %currentWorkingDirectory%/htdocs/core/modules/bank - - %currentWorkingDirectory%/htdocs/core/modules/bom - - %currentWorkingDirectory%/htdocs/core/modules/commande - - %currentWorkingDirectory%/htdocs/core/modules/expedition - #- %currentWorkingDirectory%/htdocs/core/modules/expensereport - - %currentWorkingDirectory%/htdocs/core/modules/facture - - %currentWorkingDirectory%/htdocs/core/modules/fichinter - - %currentWorkingDirectory%/htdocs/core/modules/holiday - - %currentWorkingDirectory%/htdocs/core/modules/delivery - #- %currentWorkingDirectory%/htdocs/core/modules/member - - %currentWorkingDirectory%/htdocs/core/modules/payment - - %currentWorkingDirectory%/htdocs/core/modules/product - - %currentWorkingDirectory%/htdocs/core/modules/propale - - %currentWorkingDirectory%/htdocs/core/modules/reception - #- %currentWorkingDirectory%/htdocs/core/modules/stock - - %currentWorkingDirectory%/htdocs/core/modules/supplier_invoice - - %currentWorkingDirectory%/htdocs/core/modules/supplier_order - #- %currentWorkingDirectory%/htdocs/core/modules/supplier_payment - - %currentWorkingDirectory%/htdocs/core/modules/supplier_proposal - - %currentWorkingDirectory%/htdocs/cron/class - - %currentWorkingDirectory%/htdocs/datapolicy/class - - %currentWorkingDirectory%/htdocs/debugbar/class - - %currentWorkingDirectory%/htdocs/don/class - - %currentWorkingDirectory%/htdocs/ecm/class - - %currentWorkingDirectory%/htdocs/emailcollector/class - - %currentWorkingDirectory%/htdocs/expedition/class - - %currentWorkingDirectory%/htdocs/expensereport/class - - %currentWorkingDirectory%/htdocs/exports/class - - %currentWorkingDirectory%/htdocs/fichinter/class - - %currentWorkingDirectory%/htdocs/fourn/class - - %currentWorkingDirectory%/htdocs/holiday/class - - %currentWorkingDirectory%/htdocs/hrm/class - - %currentWorkingDirectory%/htdocs/imports/class - - %currentWorkingDirectory%/htdocs/livraison/class - - %currentWorkingDirectory%/htdocs/loan/class - - %currentWorkingDirectory%/htdocs/mailmanspip/class - - %currentWorkingDirectory%/htdocs/multicurrency/class - - %currentWorkingDirectory%/htdocs/opensurvey/class - - %currentWorkingDirectory%/htdocs/product/class - - %currentWorkingDirectory%/htdocs/projet/class - - %currentWorkingDirectory%/htdocs/reception/class - - %currentWorkingDirectory%/htdocs/resource/class - - %currentWorkingDirectory%/htdocs/salaries/class - - %currentWorkingDirectory%/htdocs/societe/class - - %currentWorkingDirectory%/htdocs/stripe/class - - %currentWorkingDirectory%/htdocs/supplier_proposal/class - - %currentWorkingDirectory%/htdocs/ticket/class - - %currentWorkingDirectory%/htdocs/user/class - - %currentWorkingDirectory%/htdocs/variants/class - - %currentWorkingDirectory%/htdocs/website/class - autoload_files: - - %currentWorkingDirectory%/build/phpstan/bootstrap.php - - %currentWorkingDirectory%/htdocs/core/lib/accounting.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/admin.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/agenda.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/ajax.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/asset.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/bank.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/barcode.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/categories.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/company.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/contact.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/contract.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/cron.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/date.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/doc.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/doleditor.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/donation.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/ecm.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/emailing.lib.php - #- %currentWorkingDirectory%/htdocs/core/lib/eventorganization.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/expedition.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/expensereport.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/fichinter.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/files.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/fiscalyear.lib.php - #- %currentWorkingDirectory%/htdocs/core/lib/format_cards.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/fourn.lib.php - #- %currentWorkingDirectory%/htdocs/core/lib/ftp.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/functions.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/functions2.lib.php - #- %currentWorkingDirectory%/htdocs/core/lib/functions_ch.lib.php - #- %currentWorkingDirectory%/htdocs/core/lib/functionsnumtoword.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/geturl.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/holiday.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/hrm.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/images.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/import.lib.php - #- %currentWorkingDirectory%/htdocs/core/lib/intracommreport.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/invoice.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/invoice2.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/json.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/ldap.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/loan.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/mailmanspip.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/member.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/memory.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/modulebuilder.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/multicurrency.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/oauth.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/order.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/parsemd.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/payments.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/pdf.lib.php - #- %currentWorkingDirectory%/htdocs/core/lib/phpsessionindb.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/prelevement.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/price.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/product.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/project.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/propal.lib.php - #- %currentWorkingDirectory%/htdocs/core/lib/receiptprinter.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/reception.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/report.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/resource.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/salaries.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/security.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/security2.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/sendings.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/signature.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/stock.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/supplier_proposal.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/takepos.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/tax.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/ticket.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/treeview.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/trip.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/usergroups.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/vat.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/website.lib.php - #- %currentWorkingDirectory%/htdocs/core/lib/website2.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/ws.lib.php - - %currentWorkingDirectory%/htdocs/core/lib/xcal.lib.php - featureToggles: - subtractableTypes: false - validateParameters: false + customRulesetUsed: true + level: 0 fileExtensions: - php + paths: + - htdocs + - scripts + excludePaths: + analyseAndScan: + - htdocs/custom + - htdocs/dev/* + - htdocs/doc/* + - htdocs/documents/* + - htdocs/install/doctemplates/* + - htdocs/langs/* + - htdocs/support/* + - htdocs/test/* + analyse: + - htdocs/includes/* checkAlwaysTrueCheckTypeFunctionCall: false checkAlwaysTrueInstanceof: false checkAlwaysTrueStrictComparison: false @@ -188,7 +36,6 @@ parameters: reportStaticMethodSignatures: false polluteScopeWithLoopInitialAssignments: true polluteScopeWithAlwaysIterableForeach: true - polluteCatchScopeWithTryAssignments: false reportMagicMethods: false reportMagicProperties: false ignoreErrors: @@ -201,20 +48,15 @@ parameters: - '#Undefined variable: \$error#' - '#Undefined variable: \$errors#' - '#Undefined variable: \$form#' - - message: '#Undefined variable: \$object#' - path: %currentWorkingDirectory%/htdocs/societe/tpl internalErrorsCountLimit: 50 cache: nodesByFileCountMax: 512 nodesByStringCountMax: 512 - reportUnmatchedIgnoredErrors: true - scopeClass: PHPStan\Analyser\Scope + reportUnmatchedIgnoredErrors: false universalObjectCratesClasses: - stdClass - SimpleXMLElement earlyTerminatingMethodCalls: [] - memoryLimitFile: %tmpDir%/.memory_limit - benchmarkFile: null dynamicConstantNames: - ICONV_IMPL - PHP_VERSION