<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.dolibarr.org/index.php?action=history&amp;feed=atom&amp;title=Roadmap_and_Release_20.0.0</id>
	<title>Roadmap and Release 20.0.0 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.dolibarr.org/index.php?action=history&amp;feed=atom&amp;title=Roadmap_and_Release_20.0.0"/>
	<link rel="alternate" type="text/html" href="https://wiki.dolibarr.org/index.php?title=Roadmap_and_Release_20.0.0&amp;action=history"/>
	<updated>2026-10-22T04:43:15Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.17</generator>
	<entry>
		<id>https://wiki.dolibarr.org/index.php?title=Roadmap_and_Release_20.0.0&amp;diff=61557&amp;oldid=prev</id>
		<title>Framaurin at 12:44, 1 October 2024</title>
		<link rel="alternate" type="text/html" href="https://wiki.dolibarr.org/index.php?title=Roadmap_and_Release_20.0.0&amp;diff=61557&amp;oldid=prev"/>
		<updated>2024-10-01T12:44:30Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 12:44, 1 October 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l7&quot;&gt;Line 7:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 7:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Flag_fr}} What&amp;#039;s new on accounting : https://www.youtube.com/watch?v=JxRUM6V6w0I&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Flag_fr}} What&amp;#039;s new on accounting : https://www.youtube.com/watch?v=JxRUM6V6w0I&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Flag_fr}} https://www.atm-consulting.fr/les-nouveautes-de-la-version-20-de-dolibarr/&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Flag_fr}} https://www.atm-consulting.fr/les-nouveautes-de-la-version-20-de-dolibarr/&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mediawiki_test:diff::1.12:old-61556:rev-61557 --&gt;
&lt;/table&gt;</summary>
		<author><name>Framaurin</name></author>
	</entry>
	<entry>
		<id>https://wiki.dolibarr.org/index.php?title=Roadmap_and_Release_20.0.0&amp;diff=61556&amp;oldid=prev</id>
		<title>Framaurin: Youtube + ATM link</title>
		<link rel="alternate" type="text/html" href="https://wiki.dolibarr.org/index.php?title=Roadmap_and_Release_20.0.0&amp;diff=61556&amp;oldid=prev"/>
		<updated>2024-10-01T12:44:18Z</updated>

		<summary type="html">&lt;p&gt;Youtube + ATM link&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 12:44, 1 October 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l4&quot;&gt;Line 4:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 4:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;date=16/09/2024|&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;date=16/09/2024|&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;mainfocus=}}  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;mainfocus=}}  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{Flag_fr}} What&#039;s new on accounting : https://www.youtube.com/watch?v=JxRUM6V6w0I&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{Flag_fr}} https://www.atm-consulting.fr/les-nouveautes-de-la-version-20-de-dolibarr/&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Detailed Changelog&amp;#039;&amp;#039;&amp;#039;:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Detailed Changelog&amp;#039;&amp;#039;&amp;#039;:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mediawiki_test:diff::1.12:old-61437:rev-61556 --&gt;
&lt;/table&gt;</summary>
		<author><name>Framaurin</name></author>
	</entry>
	<entry>
		<id>https://wiki.dolibarr.org/index.php?title=Roadmap_and_Release_20.0.0&amp;diff=61437&amp;oldid=prev</id>
		<title>Framaurin: Created page with &quot;Category:RoadMap {{TemplateVersion| version=20.0|  date=16/09/2024| mainfocus=}}   &#039;&#039;&#039;Detailed Changelog&#039;&#039;&#039;: &lt;pre&gt; For users: ---------- NEW: Compatibility with PHP 8.2 (w...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.dolibarr.org/index.php?title=Roadmap_and_Release_20.0.0&amp;diff=61437&amp;oldid=prev"/>
		<updated>2024-09-16T13:49:56Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&lt;a href=&quot;/index.php/Category:RoadMap&quot; title=&quot;Category:RoadMap&quot;&gt;Category:RoadMap&lt;/a&gt; {{TemplateVersion| version=20.0|  date=16/09/2024| mainfocus=}}   &amp;#039;&amp;#039;&amp;#039;Detailed Changelog&amp;#039;&amp;#039;&amp;#039;: &amp;lt;pre&amp;gt; For users: ---------- NEW: Compatibility with PHP 8.2 (w...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:RoadMap]]&lt;br /&gt;
{{TemplateVersion|&lt;br /&gt;
version=20.0| &lt;br /&gt;
date=16/09/2024|&lt;br /&gt;
mainfocus=}} &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Detailed Changelog&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
For users:&lt;br /&gt;
----------&lt;br /&gt;
NEW: Compatibility with PHP 8.2 (with no need to disable warnings)&lt;br /&gt;
NEW: Font param Look and Feel THEME_FONT_FAMILY (#29302)&lt;br /&gt;
NEW: Param to show main menu logo in color (#29305)&lt;br /&gt;
NEW: #27048 add form to globally set &amp;quot;VARIANT_ALLOW_STOCK_MOVEMENT_ON_VARIANT_PARENT&amp;quot; variable (#27049)&lt;br /&gt;
NEW: #29274 Add possibility to have different mail for autocopy for holiday (#29275)&lt;br /&gt;
NEW: WebPortal module&lt;br /&gt;
NEW: Module Bookcal is now experimental (TimeZone not yet supported)&lt;br /&gt;
NEW: #24031 add option MAIN_GRANDTOTAL_LIST_SHOW to always show grand total to lists (#27247)&lt;br /&gt;
NEW: #28070 Adding mobile phone to thirdparty&lt;br /&gt;
NEW: Accept the __NOW__ and __USER_ID__key into filters&lt;br /&gt;
NEW: Accountancy - Add possibility for specific format FEC to sort with the FEC name (#29722)&lt;br /&gt;
NEW: Accountancy - Expense report - Add an option to use end period for transfer (#26706)&lt;br /&gt;
NEW: Accountancy - Show accounting result on balance&lt;br /&gt;
NEW: Accountancy - Show import key if exist (#29265)&lt;br /&gt;
NEW: Add option to change all service dates at once&lt;br /&gt;
NEW: Add a default limit in nb to agenda export&lt;br /&gt;
NEW: Add a Feedback-ID into email headers&lt;br /&gt;
NEW: Add a link &amp;quot;Fill with layout&amp;quot;&lt;br /&gt;
NEW: Add a link to add a website category in edit page properties&lt;br /&gt;
NEW: Add ALT+s to save a website page in edit mode&lt;br /&gt;
NEW: Add a protection in inventory when a product has stock of lot and is&lt;br /&gt;
NEW: Add a warning if invoice payment is Credit Transfer on newpayment.php (#29685)&lt;br /&gt;
NEW: Add Categorie filter for ActionComm (#28041)&lt;br /&gt;
NEW: Add code+label of payment mode and term in purchase invoice export&lt;br /&gt;
NEW: Add column data payment on VAT list&lt;br /&gt;
NEW: add column for barcode in ticket&lt;br /&gt;
NEW: add column to store a label for a supplier price (#27238)&lt;br /&gt;
NEW: add constant TAKEPOS_ALTERNATIVE_PAYMENT_SCREEN&lt;br /&gt;
NEW: add constant TICKETS_NO_COMPANY_ON_FORM&lt;br /&gt;
NEW: add constant VATUPDATE_NO_TRANSACTION&lt;br /&gt;
NEW: add const PROJECT_HIDE_OPEN_PROJECTS_LIST_ON_PROJECT_AREA to have the ability to hide the potentially very long list of open projects in any case&lt;br /&gt;
NEW: add data type &amp;#039;project&amp;#039; to blockedlog&lt;br /&gt;
NEW: Add default User roles for Thirdparties (#29242)&lt;br /&gt;
NEW: Added a configuration in workflows (#26959)&lt;br /&gt;
NEW: added address, zip &amp;amp; town to resource object&lt;br /&gt;
NEW: add field Reply to in emailing&lt;br /&gt;
NEW: Add Filter on product referring object status(Order and Order Supplier) (#28275)&lt;br /&gt;
NEW: add geometrics extrafield (#28239)&lt;br /&gt;
NEW: Add global PRODUCT_STOCK_LIST_SHOW_WITH_COMPILED_PHYSICAL_STOCK for this is based on compiled physical stock, not the sum of product stocks on existing links. (#28171)&lt;br /&gt;
NEW: Add id of last page accessed in website&lt;br /&gt;
NEW: Add import ID in list of products&lt;br /&gt;
NEW: Adding a recipient on emails sent, change status to sent partially.&lt;br /&gt;
NEW: Add invoice subtype (some countries need this like greece)&lt;br /&gt;
NEW: Add link to export ICS file of an event.&lt;br /&gt;
NEW: Add maintenance tool to switch utf8 -&amp;gt; utf8mb4&lt;br /&gt;
NEW: Add option MAIN_USE_FULL_TEXT_INDEXATION&lt;br /&gt;
NEW: Add option PDF_ADD_POSITION&lt;br /&gt;
NEW: Add option position[&amp;#039;find&amp;#039;] to DolEditor (#29546)&lt;br /&gt;
NEW: Add option THIRDPARTY_MIN_NB_PROF_ID and THIRDPARTY_MAX_NB_PROF_ID&lt;br /&gt;
NEW: Add option TICKET_INCLUDE_SUSPENDED_STATUS (Suspended status no more&lt;br /&gt;
NEW: Add option to open files in new tab (#29604)&lt;br /&gt;
NEW: Add picto favicon&lt;br /&gt;
NEW: add position column in category table  (#27425)&lt;br /&gt;
NEW: add position field into category add view&lt;br /&gt;
NEW: add relation type on element_element (#29329)&lt;br /&gt;
NEW: Add shipments and reception stats on product stat tab (#29395)&lt;br /&gt;
NEW: Add SMTP AUTH method PLAIN&lt;br /&gt;
NEW: add some bank info on odt&lt;br /&gt;
NEW: Adds payment terms and percent discount to the creation of an invoice from time entries in projects (#29694)&lt;br /&gt;
NEW: add state province filter field&lt;br /&gt;
NEW: Add support of [IF] tag other than in the core content (ex: headers who is in stylesXml) (#29357)&lt;br /&gt;
NEW: add table to store product relation with thirdparty&lt;br /&gt;
NEW: Allow smileys into emailing html content&lt;br /&gt;
NEW: Allow to set a default project for POS sales (#27042)&lt;br /&gt;
NEW: animation for display spinner when waiting response&lt;br /&gt;
NEW: Asset Module - make asset model creation in a single step (#26982)&lt;br /&gt;
NEW: auto-determine piece number in FEC import (#29672)&lt;br /&gt;
NEW: auto fill infos in template email&lt;br /&gt;
NEW: Automatically fill matching extra fields of object on line creation. (#27240)&lt;br /&gt;
NEW: Can add documents on a payment (#29660)&lt;br /&gt;
NEW: Can create new membership type from the create member form&lt;br /&gt;
NEW: Can export security events.&lt;br /&gt;
NEW: Can force language of a page in website module with xx/pagename&lt;br /&gt;
NEW: Can force position of signature on PDF using a setup constant (#29676)&lt;br /&gt;
NEW: Can generate the email selector file&lt;br /&gt;
NEW: Can setup phone mobile for the main company (#28410)&lt;br /&gt;
NEW: Can show legal form of company into the list&lt;br /&gt;
NEW: Can show the legal form in address of recipient in PDF&lt;br /&gt;
NEW: Can show the list of projects having at least one contact that is a contact of the third party&lt;br /&gt;
NEW: Complete the thirdparty index page with last modified contacts&lt;br /&gt;
NEW: constant MAIN_DISCARD_NEWD_PROJECTS_IN_SELECT&lt;br /&gt;
NEW: Constant to select if typent helps define whether the thirdparty is a company&lt;br /&gt;
NEW: contact type on auto add contributor (#26077)&lt;br /&gt;
NEW: contenteditable is supported on table,header,footer and menu tags&lt;br /&gt;
NEW: cronjob: deny to launch a method from a deactivated module&lt;br /&gt;
NEW: determine multi-currency price on object line create tpl (#28021)&lt;br /&gt;
NEW: dev: Add tool to update license with developer info&lt;br /&gt;
NEW: Dev documentation about setting up pre-commit locally&lt;br /&gt;
NEW: Develop new quick edit opportunity status (#27892)&lt;br /&gt;
NEW: display product and qty in stock_movement table in project overview (#29296)&lt;br /&gt;
NEW: dol_copy added to forbidden functions&lt;br /&gt;
NEW: Dolibarr can now re-open ticket upon customer reply on the same ticket via email#28303  (#28451)&lt;br /&gt;
NEW: Edit ticket (#29497)&lt;br /&gt;
NEW: Expense Report: Add conf to block line creation if line date is out of range (#29427)&lt;br /&gt;
NEW: Expense Report: new line add conf to Block if line date out of range&lt;br /&gt;
NEW: export invoice source id (backport v17)&lt;br /&gt;
NEW: export order client code&lt;br /&gt;
NEW: Export RSS of event can be filter on action type and code (useful for smartphone notification with feeder)&lt;br /&gt;
NEW: feature to merge 2 tasks (#29214)&lt;br /&gt;
NEW: fetch object by element for website account card&lt;br /&gt;
NEW: filter on sale representative in contact list&lt;br /&gt;
NEW: Filter shipments by selecting multiple shipping methods (#28376)&lt;br /&gt;
NEW: Font param Look and Feel (#29302)&lt;br /&gt;
NEW: fuctionnality for stock configuration prompt in AI module (#28030)&lt;br /&gt;
NEW: functionality to delete contact of company list&lt;br /&gt;
NEW: functionality to display codebar on pdf files  (#29623)&lt;br /&gt;
NEW: functionality to list event for user&lt;br /&gt;
NEW: functionality for salaries massaction (bank-transfer)&lt;br /&gt;
NEW: function for removing company contacts&lt;br /&gt;
NEW: get html template example for each model&lt;br /&gt;
NEW: hide external and non employee users in combobox&lt;br /&gt;
NEW: hide external user in combobox&lt;br /&gt;
NEW: Implement EPC QR Code on Invoices (#29445)&lt;br /&gt;
NEW: in project overview, stock movement section, we only stock movement ref, but not the product and not the quantity&lt;br /&gt;
NEW: input in emailForm to put AI instructions&lt;br /&gt;
NEW: input reason label in customer proposal and order export (#29540)&lt;br /&gt;
NEW: intervention list date filter&lt;br /&gt;
NEW: Invoice Creditor Reference and banking barcode (FI) (#29328)&lt;br /&gt;
NEW: Invoice PDF If bank account is empty, not print &amp;quot;Bank&amp;quot; and &amp;quot;Account&amp;quot;&lt;br /&gt;
NEW: Label on Price fix:#28544&lt;br /&gt;
NEW: layout and prompt AI on create emailing&lt;br /&gt;
NEW: Look and feel v20 - add picto to full list on summaries tables.&lt;br /&gt;
NEW: Look and field: The operator &amp;#039;or&amp;#039; on category filter visible only&lt;br /&gt;
NEW: make &amp;quot;sell&amp;quot; or &amp;quot;eat by&amp;quot; mandatory in product lot&lt;br /&gt;
NEW: Management of the In-Reply-To and References for ticket answers.&lt;br /&gt;
NEW: module user rights enhancement (#29150)&lt;br /&gt;
NEW: Module Website: Can link/unlink translation between web pages&lt;br /&gt;
NEW: Move dir of cache for widgets&lt;br /&gt;
NEW: multiselect with checkbox in categories/tags search for thirdparty list (#28335)&lt;br /&gt;
NEW: new consts to redirect from massaction createbills (#29436)&lt;br /&gt;
NEW: new global string to preselect yes for one bill per thirparty in orderlist massaction (#29359)&lt;br /&gt;
NEW: notification action triggers for cancelling orders and invoices&lt;br /&gt;
NEW: now button when editing an event&lt;br /&gt;
NEW: online signature of shipments (#29559)&lt;br /&gt;
NEW: On OAuth Google login, no prompt at all if already logged in Google&lt;br /&gt;
NEW: Option to transfer only reconciliated lines from bank (#29408)&lt;br /&gt;
NEW: Param to show main menu logo in color look and feel (#29305)&lt;br /&gt;
NEW: Payment page received from donations&lt;br /&gt;
NEW: possibility to define a completely inactive module (#29289)&lt;br /&gt;
NEW: preview example page in website when create page&lt;br /&gt;
NEW: propal canceled status&lt;br /&gt;
NEW: receptions in dolibarr search box (#29700)&lt;br /&gt;
NEW: redirect link in the config module in the event of an error client&lt;br /&gt;
NEW: remove auto selected user for taxes-charges by default&lt;br /&gt;
NEW: resource address, phone, email &amp;amp; maxusers (#28185)&lt;br /&gt;
NEW: Script for fast identification of missing/unused/duplicate translations&lt;br /&gt;
NEW: search member by date&lt;br /&gt;
NEW: See the documents of my subordinates  (#28318)&lt;br /&gt;
NEW: separation of expense report from salary accounting code&lt;br /&gt;
NEW: Show error on ical parse&lt;br /&gt;
NEW: Show the profit per attendee on events&lt;br /&gt;
NEW: signed status CRUD to contract and fichinter&lt;br /&gt;
NEW: Simplify the verification of context in hook (#27105)&lt;br /&gt;
NEW: Sort variants list by product ref on combinations page (#27969)&lt;br /&gt;
NEW: Statistic page donation (#28463)&lt;br /&gt;
NEW: Supplier Invoice - List - Selector with choice on ECC country&lt;br /&gt;
NEW: supplier order submit method message (#27855)&lt;br /&gt;
NEW: Supplier Proposal API extended with DELETE, POST and PUT possibilities&lt;br /&gt;
NEW: Support $moreinheader with SwiftMailer&lt;br /&gt;
NEW: Support a date selector with type &amp;#039;html&amp;#039;&lt;br /&gt;
NEW: Support Reply-To tracking in emails sending (tickets only for the&lt;br /&gt;
NEW: Take image from content for RSS&lt;br /&gt;
NEW: TakePOS - add buttons to allow keyboard usage for discounts (#24819)&lt;br /&gt;
NEW: TakePOS - add constant to show line subprices&lt;br /&gt;
NEW: TAKEPOS - Clear search results&lt;br /&gt;
NEW: TAkePOS - don&amp;#039;t allow payment if no thirdparty selected&lt;br /&gt;
NEW: TakePOS - Option TAKEPOS_NO_GENERIC_THIRDPARTY to disallow payment if no specific thirdparty selected (generic not allowed)&lt;br /&gt;
NEW: Test send triggercode to url (#29675)&lt;br /&gt;
NEW: Trigger for Knowledge (#29645)&lt;br /&gt;
NEW: Add branches into apstats security report (cti.dolibarr.org)&lt;br /&gt;
NEW: updated resource list for new fields (#28705)&lt;br /&gt;
NEW: Update expense report card.php to allow pdf preview even without thumbnail (#29491)&lt;br /&gt;
NEW: update price with auto to use const for rounding prices (#29350)&lt;br /&gt;
NEW: Use a nicer combo list to select the export accounting format&lt;br /&gt;
NEW: users can set their own length for short lists&lt;br /&gt;
NEW: Various payment - Use list of account when edit (#27992)&lt;br /&gt;
NEW: warning message when cloning a product whose status is not to sell (#28374)&lt;br /&gt;
PERF: Performance enhancement on Invoice/Paiement area page&lt;br /&gt;
PERF: Use cache for loaded users/contact on project list&lt;br /&gt;
SEC: add some dolibarr functions to dol_eval forbidden functions (#29459)&lt;br /&gt;
SEC: #28168 Correct protocol limitations (PHP7.4/Win) (#28172)&lt;br /&gt;
SEC: Add a protection against installation of external module bypassing&lt;br /&gt;
SEC: A user with export permission can export module data without&lt;br /&gt;
SEC: Reduce nb of var without WAF used when using the website module&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For developers or integrators:&lt;br /&gt;
------------------------------&lt;br /&gt;
NEW: $noescapetags param of dol_escape_html works if attributes&lt;br /&gt;
NEW: Add createInvoiceFromContract to API invoice (#27277)&lt;br /&gt;
NEW: add debugging info to api/status if non-production&lt;br /&gt;
NEW: Add functions to manipulate emojisNEW: add hook addMoreCategoryList to list category from external module&lt;br /&gt;
NEW: add hook AFTER_VAT_UPDATE&lt;br /&gt;
NEW: Add hook on printsheet barcode page&lt;br /&gt;
NEW: adding online_payment_url to invoices API (#28107)&lt;br /&gt;
NEW: Add method getPublicImageOfObject() for website module&lt;br /&gt;
NEW: Add sql stddev_pop db function.&lt;br /&gt;
NEW: Show the process ID and user ID into log files&lt;br /&gt;
NEW: Add trigger on modify of user bank account&lt;br /&gt;
NEW: Add Windows ci workflow&lt;br /&gt;
NEW: All apis has a hook context of &amp;quot;api&amp;quot; initialized&lt;br /&gt;
NEW: All fetchAll() method now support the USF syntax.&lt;br /&gt;
NEW: allow [] in dol_eval (#27290)&lt;br /&gt;
NEW: API Add some api endpoints (#25126)&lt;br /&gt;
NEW: API can create, get and update extrafields #29249 (#29270)&lt;br /&gt;
NEW: Api can force invoice ref (#28547)&lt;br /&gt;
NEW: API can Post extrafields #29249 v2&lt;br /&gt;
NEW: API delete extrafields from name and elementtype&lt;br /&gt;
NEW: API GET projects by REF and by email_msgid&lt;br /&gt;
NEW: Api parameters are sanitized by the WAF, same code than GET/POST&lt;br /&gt;
NEW: API setup delete extrafields from name and elementtype v2 (#29269)&lt;br /&gt;
NEW: API setup update extrafields from name, elementtype and json&lt;br /&gt;
NEW: API setup update extrafields from name, elementtype and json (#29273)&lt;br /&gt;
NEW: api_thirdparties add and delete representatives (#27943)&lt;br /&gt;
NEW: Extend of module options Setup&lt;br /&gt;
NEW: Factoring and Fix external module elementType (#28666)&lt;br /&gt;
NEW: class ai for generate content with api&lt;br /&gt;
NEW: consider document lines in element properties&lt;br /&gt;
NEW: DolDeprecationHandler for deprecations&lt;br /&gt;
NEW: Execute the doAction hook on other ticket pages (#29701)&lt;br /&gt;
NEW: FormSetupItem: show picto in front of confs applied across all entities (#28024)&lt;br /&gt;
NEW: Global constant for deprecated module mapping (#28348)&lt;br /&gt;
NEW: Hook after total Table on PDF (#28092)&lt;br /&gt;
NEW: Hooks tab in debugbar (#24992)&lt;br /&gt;
NEW: Init of a module with a website template copy also the preview&lt;br /&gt;
NEW: llxHeader body css for asset, for command see #26856, for donation&lt;br /&gt;
NEW: ModuleBuilder : add type genericpassword entry types&lt;br /&gt;
NEW: Makes it possible to update html text fields besides integer and alpha fields for a custom build module.&lt;br /&gt;
NEW: method to help declare dictionaries more easily&lt;br /&gt;
NEW: Upgrade jsChantImproved to 2.8.10&lt;br /&gt;
NEW: Upgrade Sabre lib to 4.6.0&lt;br /&gt;
QUAL: Add sqlfluff (SQL code and style check) (#29097)&lt;br /&gt;
QUAL: Check lang files does not contains &amp;#039;notranslate&amp;#039;&lt;br /&gt;
QUAL: Clean code around dol_eval use&lt;br /&gt;
QUAL: clean deprecated code&lt;br /&gt;
QUAL: Deprecated &amp;quot;domiciliation&amp;quot;. Replaced with &amp;quot;address&amp;quot;&lt;br /&gt;
QUAL: DiscountAbsolute: inherit CommonObject to implement errorsToString&lt;br /&gt;
QUAL: Enhance API description - BOM, Documents (#27492), Setup&lt;br /&gt;
QUAL: extend api/status&lt;br /&gt;
QUAL: feature parity between vendor and customer template invoice (#26588)&lt;br /&gt;
QUAL: FichinterTest: add errorsToString()&lt;br /&gt;
QUAL: Force subclass MINVERSION (#26314)&lt;br /&gt;
QUAL: Make the same condition only once.&lt;br /&gt;
QUAL: phpstan github action&lt;br /&gt;
QUAL: professional identifiers - remove TODO by adding profid.lib.php&lt;br /&gt;
QUAL: Properties -&amp;gt;date_update and -&amp;gt;date_modification were merged&lt;br /&gt;
QUAL: removed duplicate language file&lt;br /&gt;
QUAL: Remove the external js library jstimezonedetect&lt;br /&gt;
QUAL: Remove use of customurl filter. Must use the USF syntax.&lt;br /&gt;
QUAL: Rename all input fields &amp;quot;tel&amp;quot; into &amp;quot;phone&amp;quot;&lt;br /&gt;
QUAL: Rename column fk_origin_line on shipment lines into fk_elementdet to match a generic use. (#28989)&lt;br /&gt;
QUAL: replace $conf-&amp;gt;global with getDolGlobalString()&lt;br /&gt;
QUAL: Send API response data before completing post-processing tasks&lt;br /&gt;
QUAL: Sending API response data to clients before completing post-processing tasks.&lt;br /&gt;
QUAL: Start to rewrite the export of accountancy. Misconception generates&lt;br /&gt;
QUAL: the config_extended of phpstan will be kept on apstats only for the&lt;br /&gt;
QUAL: The signature for all -&amp;gt;delete() method has been modified to match&lt;br /&gt;
QUAL: Use phan to help detect new issues (#27706)&lt;br /&gt;
QUAL: use real time when creating action from list&lt;br /&gt;
QUAL: replace hard-coded dictionary IDs with constants (#29501)&lt;br /&gt;
&lt;br /&gt;
WARNING:&lt;br /&gt;
--------&lt;br /&gt;
&lt;br /&gt;
The following changes may create regressions for some external modules, but were necessary to make Dolibarr better:&lt;br /&gt;
* If a filter is defined into and extrafields &amp;quot;Select from a table&amp;quot;, this filter MUST use the Universai Search Filter syntax (field:=:value) instead of field=value.&lt;br /&gt;
  See https://wiki.dolibarr.org/index.php?title=Universal_Search_Filter_Syntax&lt;br /&gt;
* The parameter $filter of methods fetchAll() does not accept array of SQL commands but must be a string of an Universal Search Filter syntax.&lt;br /&gt;
  See https://wiki.dolibarr.org/index.php?title=Universal_Search_Filter_Syntax&lt;br /&gt;
* Some API HTTP return code were moved from 401 to 403 to better follow REST specification.&lt;br /&gt;
* More class properties (with old name in french) are now deprecated in favor of the property name in english.&lt;br /&gt;
* dolibarrtriggers class VERSION_XXX constants have been deprecated. Please use array dictionary VERSIONS[&amp;#039;XXX&amp;#039;].&lt;br /&gt;
* Properties -&amp;gt;date_update and -&amp;gt;date_modification were merged into date_modification.&lt;br /&gt;
* All CLI tools (into /scripts) return a positive value to the shell if error (0 remains success) for a better&lt;br /&gt;
  cross platform compatibility. On linux the exit(-1) was caught as 255, it may be now exit(1) so will be caught as 1.&lt;br /&gt;
* Ldap class methods connect_bind() &amp;amp; dump_content() have been renamed&lt;br /&gt;
* Use of dol_eval with parameter $returnvalue=0 is deprecated.&lt;br /&gt;
* The signature for all -&amp;gt;delete() method has been modified to match the modulebuilder template (so first param is now always $user), except&lt;br /&gt;
  the delete for thirdparty (still accept the id of thirdparty to delete as first parameter). Will probably be modified into another version.&lt;br /&gt;
* Route for API /thirdparties/gateways has been renamed into /thirdparties/accounts to better match the api object name.&lt;br /&gt;
* The AGENDA_ENABLE_DONEBY hidden option has been removed. So $userdoneid in actioncomm class is deprecated. Please use $userownerid instead. Also,&lt;br /&gt;
  the deprecated field $fk_user_done in actioncomm table is removed. Please use $fk_user_action instead.&lt;br /&gt;
* The table commande_fournisseur_dispatch has been renamed into receptiondet_batch to better match its goal and the field fk_commande&lt;br /&gt;
  and fk_commandefourndet were renamed into fk_element and fk_elementdet&lt;br /&gt;
* Removed trigger BILLREC_CREATEBILL. This trigger was not a CRUD event. If you used it, you can already use the trigger BILL_CREATE and&lt;br /&gt;
  test that ($object-&amp;gt;fac_rec &amp;gt; 0) to know if creation trigger is from a recurring invoice or not. Also this old trigger was never enabled&lt;br /&gt;
  into table llx_c_action_trigger.&lt;br /&gt;
* Renamings in expedition line table and class, fk_origin_line is now fk_elementdet in table and class.&lt;br /&gt;
* The signature of method fetch() of class CompanyBankAccount has been modified to match the signature of method Account-&amp;gt;fetch()&lt;/div&gt;</summary>
		<author><name>Framaurin</name></author>
	</entry>
</feed>