Dolibarr 20.0.4
20 February 2025
Dolibarr version 20.0.4 is now available.
Upgrading to Dolibarr 20.0.4
Dolibarr 20.0.4 can be upgraded to (or installed) using any of Installatron's products. Use Installatron's optional Automatic Update feature to automatically apply Dolibarr updates as new versions are released, or use Installatron's Clone feature to duplicate an existing Dolibarr install to test the 20.0.4 upgrade prior to applying it live. Get started managing your Dolibarr installations with Installatron
What's New in Dolibarr 20.0.4
Bug Fixes and Changes
- $this->origin_object can not be instance of CommandeFournisseur if it is already an instanceof CommonObject
- 17.0 API endpoints "PUT": prevent overwriting all extrafields if only some are supplied in the request cf. PR #29237
- 17.0 - collisions in cache for dol_getIdFromCode
- 20.0 - PHP8 fatal when creating a reception unless corresponding PDF model is enabled
- Stock import sql query
- fatal error on kit
- - substitution of __DATE_DELIVERY__
- Delete a loan settlement is partial
- Loan - Insurance amount need decimals
- + avoid php warning
- JS Error: Uncaught TypeError
- VAT type is inverted in form VAT selector
- - Tags are using a special rendering.
- add other fields
- autofill price with multicurrency on supplier doc
- avoid phan error
- avoid php8 warnings
- avoid warning with the new Dolistore website
- backport from develop to avoid php warning
- Bad calculation of the theoretical stock. Did not take into account
- bad dispatched quantities for batches on shipment card
- Brian is in the kitchen
- broken feature, compatibility with "Default search filters"
- broken feature with check $pa_ht_isemptystring
- Bug on select user on time.php (all project list)
- can not delete files in task card
- Check "$search_sale" only if it's an internal user
- clean unique extrafields when create product combination
- code not visible correctly into view of dictionary
- compatibility between next_prev_filter and hook return
- compatibility with multicompany
- Complete path was started in #17243 for pdf_cannelle
- Continue for eagle_proforma
- country id is not saved when we provide country_code only
- #CVE-2024-34051
- delete supplier order when at least one line linked to customer order line
- display error when loan can't be deleted
- display full tree on shipment card when a kit contains a same component in other sub-kit
- DROP INDEX IF EXISTS is not possible !
- extrafields lost during creation from rec invoice
- FEC import
- Fiscal year - missing translation on status
- Fix return value of hook sendMail when hook return -1 who must be return false in sendfile() function
- GETPOST('private_message')
- glob is better for search files with wildcard + avoid warning
- if $force_entity = 0 ($force_entity != 'default') = false
- Loan - Insurance amount need decimals
- Many status on invoice linked object block
- merge problem
- missing company name if dontaion is linked to third party
- missing default values if $objsrc or $soc fields are empty
- missing edit extrafields inline for member card
- missing quick edit for extrafields
- more bugs and warnings
- Multilangs : PDF lines description
- Must not have both thirdparty and member.
- ODT substitution when many HTML tags in string
- on the road again
- pdf_cannelle (supplier_invoice) add background - Complete #17243
- Prices didn't update when clone a propale with update prices
- product variants copy: also copy multiprice variations
- refactorize (maybe broken feature for not received completely)
- remove debug trace
- remove socid when cloning a project without third parties
- removes traces of <<<HEAD conflicts following the postponement of branch 13 modifications (#32014)
- remove unused code
- same broken feature for propal and invoice
- select 2 no record found translate
- selectcontact is loading all contacts if socid is empty and MAIN_ACTIONCOM_CAN_ADD_ANY_CONTACT is not set
- selectcontact is loading all contacts when update event
- select group and severity search fields on ticket list
- send email to assigned user on ticket create
- sql error with the new sql forge filter
- sql "order by" is defined twice
- status ticket update for new message
- swap tests
- switch on/off status of a page of the second website.
- There were many status indicator in the invoice linked object block (propal card)
- uniformize code
- units used scale and scale is an integer
- wrong alias table
- wrong file path + avoid warning
- wrong filter format
- wrong "fournisseur" var value checking
- wrong left margin
- wrong message on update shipment
- wrong ODT path for multicompany
- wrong path for odt models
- wrong search filter, empty product unit is "none"
- wrong update function parameter
- some wrong var type
- some wrong var name