:: Version 3.2.0 ::
iTop Professional - Change Log
3.2.1
Product specific
For iTop users
-
N°7112 - SSO SAML not fully compatible with php8.0 +
-
N°7672 - Identify email sender in notification Action
-
N°7780 - Fix authentification with OpenID no more proposed automatically
-
N°7819 - Fix FR typo in “Etat d'entrée”
-
N°7867 - Issue with MTP offline
-
N°7885 - SAML extension is affected by CVE-2019-3465
-
N°7950 - Trigger update by mail : allow change of unsubscribe policy
For iTop designers
-
N°1563 - Allow predefined responses on multiple classes and on multiple logs of a class
-
N°2113 - Allow to hide transitions buttons on object creation when dispatch rules apply
-
N°6689 - Allow predefined responses to be dependent on current object
-
N°7368 - Fix the case where UR are created in a state in which Approvals do not apply
-
N°7737 - Remove WebPage deprecated calls in approval base
-
N°7738 - deprecated in workflow graphical view
-
N°7843 - Preventive code maintenance due to a change on PHP 8.2
-
N°8016 - Replace iApplicationObjectExtension by Events in auto dispatch
-
N°8057 - Replace iApplicationObjectExtension by Events in Approval base
-
N°8063 - Remove iApplicationObjectExtension and XML 3.2 in predefined responses
iTop standard
For users
-
N°5079 - Fix misleading “leave confirmation” alert after creating a Global Request
-
N°6613 - Save user image only when image is valid.
-
N°7219 - Fix broken dashboard having special caracters in their title
-
N°7633 - Fix object display slowness in case of long history
-
N°7639 - Switching tab without reloading the data table
-
N°7658 - Changed FR labels on date search by “Du” — “au” — to make them shorter
-
N°7746 - Disable the Case Log edition button when the user is not allowed to edit the object
-
N°7759 - Add EN/FR tooltips on Organization and Delivery Model classes
-
N°7774 - Improve in News center, the tooltip to navigate to Notification subscription
-
N°7792 - CAS : Fix white page when navigating after a long pause
-
N°7820 - Fix Newsroom Tooltips
-
N°7874 - Fix inline images deleted by garbage collector in some cases
-
N°7898 - Inserted precanned reply and FAQ advanced at the cursor position. Thanks to @jbostoen
-
N°7903 - Fix on-going demand brick broken with Global Demand 1.5+
-
N°8134 - Fix Portal user profil brick edition
-
N°8144 - Issue using Organization filtering box
For administrator
-
N°5039 - DataSynchro : Change column type to MEDIUMTEXT for importing linkset with the object
-
N°7111 - Removed misleading link presented at the end of the setup
-
N°7206 - Fix TriggerOnStateEnter not called on transition without change of state
-
N°7228 - Webhook JSON: Fix double quotes, new lines, tabs, etc in object data. Format without double-quotes is abandoned.
-
N°7664 - Add support for PowerAutomate
-
N°7721 - Add default configuration to authent-token module
-
N°7728 - Fix add_linked_script / add_linked_stylesheet flooding error.log
-
N°7750 - Display OQL shortcut page just like “run queries”.
-
N°7777 - Hide tab “Last executions” in Action creation
-
N°7803 - Fix installation issue (either an extension from iTop Hub or a new component from the Designer)
-
N°7852 - Class tree display in “User Rights” tab fixed for classes with non displayed parent.
-
N°7858 - Fix Backup not performed on first execution
-
N°7871 - Fix migration to itop3.2.1 with trigger “on object mention” without “mentioned filter”
-
N°7906 - UserPreference class: add list, search criteria and reconciliation
-
N°7916 - Fix missing charset when sending emails with attachments
-
N°7917 - Fix emails classified as spam due to incorrect `Message-ID` thanks to @vlk-charles
-
N°7925 - Fix incorrectly formatted In-Reply-To email header
-
N°7997 - Fix Sharing Base compatible with iTop >= 3.1+
-
N°8001 - Fix issue with TriggerOnObjectMention on News without icon
-
N°8008 - Webhooks: Fix update of triggering object on process response callback
-
N°8047 - New SuperUser iTop Profile, similar to an Administrator without Configuration and Backup
For iTop designers
-
N°1000 - Harmonize filters results in portal browse brick
-
N°5791 - Allow more syntaxes on obsolescence condition: IN, NOT IN, LIKE, NOT LIKE
-
N°7145 - Support XML default DateTime value. New default empty instead of now!
-
N°7383 - FilterBrick on ManageBrick: enable changing criteria even if nothing found
-
N°7756 - Allow AttributeClass to declare “class_category” empty in XML
-
N°7762 - Improved the feedback when a deprecated function of PHP is called
-
N°7845 - Preventive fix of wrong date computation with PHP 8.2+, but not an issue apparently
-
N°7847 - Fix regression preventing an extension to define an PHP interface
-
N°7873 - Fix brick visibility despite XML security tag “allowed profiles”
-
N°7886 - Remove deprecated datamodel methods (SetAssignmentDate)
-
N°7927 - Added context “Setup” to Hub connector, Designer connector and unattended install
-
N°7987 - Enable customization of manage brick page template
-
N°7995 - Allow to redefine portal twig template for all bricks in a portal
-
N°8019 - Enrich 4 events with transition information “stimulus_applied”
-
N°8031 - Make all portal bricks use custom templates for all templates
-
N°8050 - Allow any external libraries imported by composer in iTop extensions
-
N°8108 - EVENT_DB_AFTER_WRITE: add previous values in $oEventData→Get('changes')
-
N°8115 - Add TLS support in Unattended Install.
-
N°8129 - Dont crash if date/time default value has a bad format
-
N°8131 - Protect event DB_LINKS_CHANGED on deleted object
-
N°8139 - Avoid double writing in lifecycle action (DBUpdate in actions are no more executed)
Localization
-
N°7735 - Improve Spanish translations for iTop 3.2
-
N°7824 - Update czech translations for iTop3.2 thanks to @Stetinac
-
N°7859 - Add missing French translation on newsroom
-
N°7932 - Add english (GB) translation to iTop
-
N°7954 - Update Chinese translations
Security
Severity High
-
N°7730 - Fix XSS on parameters leading to CSRF breach
-
N°7770 - CVE-2024-52601 - Secure Direct Object Reference + prevent Mass Data Leak
-
N°7776 - CVE-2025-24021 - Prevent mass assignment of fields not present in form
-
N°7810 - CVE-2025-24022 - Prevent Portal code injection
-
N°7854 - Bump twig lib to version v3.16.0 for security
Severity Medium
-
N°6282 - Fix XSS in Functions (snyk.io)
-
N°6283 - Fix XSS in webservice (snyk.io)
-
N°6284 - CVE-2025-24026 - Fix redos in regex (snyk.io)
-
N°6617 - Fix “Denial of Service” vulnerability
-
N°7980 - CVE-2024-56157 Fix self XSS in CSV Import
-
N°8007 - On OQL error (wrong class), list only allowed classes for the current user (read access).
-
N°8150 - Check if hash in URL is the same that one of the image
3.2.0
-
3.2.0-2:
-
N°7801 - Fix erratic behavior on organization filter
-
N°7803 - Fix MTP from iTop Hub and Designer failing with warnings
-
Product specific
-
3.2.0-1:
-
N°7780 - 'allowed_login_types' order doesn't work for authentification with OpenID
-
N°7779 - Fix login with SAML not working anymore
-
For iTop users
-
N°7498 - Rename ActionEmailApprovalRequest: “Notification by Email for Request Approval”
-
N°6680 - Dispatch rules: on class Team Rule add a sorting on “rank”
-
N°6591 - Display “Dispatch” buttons when not in dispatch rules contexts and not in ticket creation
-
N°6355 - Add tooltips on Dispatch rule fields and check on contexts
-
N°7685 - Align Calendar invitation presentation to Email and add tooltip
-
N°7504 - Harmonize Calendar invitations Action and Event names with others
-
N°7388 - Synchronize iTop objects with events in Outlook Calendar (creation/modify/suppress)
-
N°2981 - Make the calendar invitation Reminder delay configurable
-
N°7699 - Send Calendar invitation asynchronously with retry
-
N°6353 - Add tooltips on Request Template and Field classes
-
N°7340 - Mail to ticket: take fist contact when multiple matches on email address.
-
N°7528 - Improve usability with tooltip and rename MailInbox fields (EN and FR)
-
N°7347 - Log out of SSO as well, when logging out of iTop if logout service if configured
For iTop designers
-
N°4708 - Autoclose Ticket: Move one-rule-per-class restriction from CheckToWrite to a uniqueness rule
-
N°2255 - Auto dispatch: Add protection on invalid OQL and when datamodel changes make the dispatch rules invalid.
Translation
-
Approval process automation: N°7241 - Update czech translations thanks to @Stetinac
-
Approval process automation: N°6922 - Update chinese translations thanks to @bdejin
-
Dispatch Incident to a team: N°6580 - Update czech translations (thanks to @Stetinac!)
-
iTop System Information: N°7689 - Update german translations thanks to @Attila0428
-
Customer Survey: N°6902 - Update chinese translations thanks to @bdejin
-
Mail to ticket automation: N°7690 - Update german translations thanks to @Attila0428
-
Mail to ticket automation: N°6918 - Update chinese translations thanks to @bdejin
-
Password Expiration Management: N°6899 - Update chinese translations thanks to @bdejin
-
User actions configurator: N°6893 - Update chinese translations thanks to @bdejin
Technical fixes
-
Approval process automation: N°6981 - Symfony 6.4 - Remove deprecated calls - Approval-base
-
Assign to Me: N°7695 - Fix assign to me without Incident, spamming the error log on each Ticket opening
-
Assign to Me: N°7535 - Fix Assign to me: Mandatory attributes not displayed with PHP 8.1
-
Brute Force Protection: N°7220 - PHP 8.1: Fix implicit conversion from float to int loses precision
-
Brute Force Protection: N°7180 - PHP 8.2: Fix usages of str_pad() with null value
-
Calendar invitations: N°7524 - Calendar invitations : Fix notification rejected by SMTP O365
-
Calendar invitations: N°6851 - Calendar invitations : Fix notification format
-
Calendar view: N°7334 - Remove embedded moment.js lib and use iTop core version
-
Communications to the Customers: N°6623 - Fix communication edition when changing it to OQL
-
Communications to the Customers: N°7322 - Make title mandatory in Communication to enable communication wrapping in console
-
Communications to the Customers: N°6986 - Symfony 6.4 - Remove deprecated calls - communication
-
Customized request forms: N°7599 - Migrate usage of WebPage::add_linked_script()
-
iTop log management: N°7537 - Prevent non-admin users to access the log management page
-
iTop System Information: N°7394 - Fix System information fatal error when database table prefix is used
-
ITSM Designer Connector: N°6409 - Add missing error message on exception during ITSM Designer connection
-
Mail to ticket automation: N°7440 - Fix typo on FR dictionary (Value:NormalChange)
-
Mail to ticket automation: N°5613 - PHP 8.1 : Fix mailbox password in clear with PHP warning
-
Mail to ticket automation: N°7282 - decoding-test.php : add Laminas decode
-
Mail to ticket automation: N°7352 - PHP 8.2 compat : dollar brace interpolation
-
Mail to ticket automation: N°7154 - PHP 8.2: Fix classes properties created dynamically
-
Predefined response models: N°7420 - Precanned reply: correctly handle HTML editors in iTop 3.2
-
Send updates by email: N°7422 - Update email reply following CKEditor update
-
User actions configurator: N°7301 - Fix invalid JS files URIs when creating an object
-
User actions configurator: N°6276 - Object-copier : Error creating ticket directly in resolved state
-
User actions configurator: N°5474 - Fix bug : After DoCheckToWrite has failed → object-copier was broken
-
User actions configurator: N°7396 - Remove WebPage::add_linked_script method
-
User authentication by token: N°7001 - No more required to be admin to generate oAuth token (can be delegated)
-
Webhook integrations: N°7170 - PHP 8.3: Fix usages of get_class() without argument
-
Workflow graphical view: N°7169 - PHP 8.3: Fix usages of get_class() without argument
iTop standard
-
3.2.0-2:
-
N°7801 - Fix erratic behavior on organization filter
-
N°7803 - Fix MTP from iTop Hub and Designer failing with warnings
-
For users
-
N°6218 - 1:n & n:n - Read mode: Refresh of tab count on Add/Remove in pop-up
-
N°6303 - Add a search brick on all Tickets of a User Portal
-
N°6555 - Add class description in tooltip of Dashlet badge
-
N°7157 - Allow users to unsubscribe from notification channels
-
N°7379 - Add search criterion to Workorder and 'status' to Contact search
-
N°7391 - Add color blind themes to iTop backoffice
-
N°7392 - Add high contrast theme to iTop backoffice
-
N°7484 - “solution” field of classes Incident and UserRequest is now an HTML field
-
N°7644 - Add Brand logo and Model picture
-
N°3767 - Impact analysis: Display filtering box on CIs list and groups
-
N°4494 - Fix auto-locking on log save and transition, by waiting
-
N°4511 - CKEditor : Fix links made on all the leading text in Firefox
-
N°4631 - Fix a display issue when description field is fullscreen while using vertical tabs
-
N°4894 - Improve AttributeDecimal validation during CSV import
-
N°5136 - Relations: Fix “Select All objects” adding obsolete objects even if “show obsolete data” param. not activated
-
N°5786 - Fix text color in public log and in AttributeHTML
-
N°6152 - Fix criteria & object list loaded twice
-
N°6438 - Fix expensive reloading of each displayed ticket when displaying a ticket list (no more highlight)
-
N°6847 - Position of label in configuration of pdf export
-
N°6861 - Display warning when creating/editing a mandatory blob in modal
-
N°6903 - Fix crash when emptying file attribute (eg. picture of a contact)
-
N°6993 - Fix bulk transition on object containing a null blob
-
N°7023 - Fix check to write error when adding an item on a n:n relation (eg. contact) on a new object (eg. user request) on the end-users portal
-
N°7047 - Fix unwanted Attachment on Unitary requests forms in Global Request management
-
N°7122 - Portal: Hide log off button when user can't actually log off (eg. SSO using SAML or other providers)
-
N°7163 - Avoid having an empty list when “items per page” set to 0
-
N°7232 - Run query : Clearer message when querying unknown class
-
N°7255 - Fix misc. stylesheets not working in portal since N°7047
-
N°7288 - Fix page crash due to unescaped characters in relations row actions
-
N°7292 - Improve Clear function in ExtKeyWidget
-
N°7302 - SetupUtils::HumanReadableSize : fix units returned
-
N°7313 - Fix bad display of single quotes in charts
-
N°7491 - Fix email-reply trigger not executed in some cases
-
N°938 - Improve print of portal object page and portal dashboard page
-
N°7397 - Update welcome popup content for iTop 3.2
For administrator
-
N°3465 - Fix attachment file name hardcoded to “uploaded-file” when imported from CSV import
-
N°5472 - Notification action : add a last executions tab
-
N°5775 - Allow configuration of OAuth client on MS Azure with single tenant
-
N°6619 - Attachment: changed contact_id from an ExternalField into an ExternalKey
-
N°7194 - Add link to datamodel class schema on object details
-
N°7425 - Add Warning when a user has no contact or no allow org
-
N°7447 - Ease User Dashboard clean-up for iTop administrator
-
N°2039 - Feed Newsroom from an Action
-
N°7298 - Allow each Action to be asynchronous or not
-
N°7533 - Warning at setup if installed on Galera clusters
-
N°1112 - DataSynchro: Replica failing to synchronize says 'Organization' instead of 'undefined' ???
-
N°2572 - Improve error message “Nowhere to go??” with root cause
-
N°2732 - DataSynchro: cap memory peak value to 2Gb before storing it in priv_sync_log field
-
N°3062 - Update SetupCssIntegrityChecklistTest to fail build if setup.css wasn't recompiled
-
N°3677 - Fix AttributeImage.default_image URLs not up to date after app_root_url change
-
N°3715 - Export above 1000 entries ignore obsolete data from user preference
-
N°4342 - Improve generic bulk deletion function with memory limit handling
-
N°5194 - Enable webhook actions to be asynchronous in order to save response callback value
-
N°5218 - Fix toolkit error on enum since 3.0.0
-
N°6086 - CSV import: Treat first line as a header
-
N°6361 - Change query examples order to highlight the one working on an empty iTop
-
N°6618 - Fix crash due to router's cache containing an integer instead of an array
-
N°6659 - Ticket: attribut “team_name” now contains the name, “team_email” attribut added.
-
N°6808 - Rank management (order) in iTop actions
-
N°6826 - Fix error on file attribute of DocumentFile class in Designer (No SQL value)
-
N°6852 - Missing configuration 'forgot_password_from'
-
N°6874 - Fix encoding issue in out-going emails
-
N°6887 - Fix excessive OQL requests to display user's grant matrix
-
N°6889 - MariaDB >= 10.6.1 since iTop 2.7.9 Backup mysqldump call : restore ability to connect on localhost using the socket protocol
-
N°7017 - Fix with a lock the fatal error occuring when rebuilding expression-cache
-
N°7021 - Fix error log and useless compilation time due to SCSS file unnecessary compilation
-
N°7039 - Fix regression: placeholder :current_contact→id not working in OQL in iTop 3.1
-
N°7052 - Fix PHP notices in synchro_import.php (3.0.1 regression) (thanks to Gilbert Breton !)
-
N°7082 - Allow to force asynchronous send of emails
-
N°7085 - Fix infinite loop in login page until fatal error occurs
-
N°7130 - Allows to ignore existing column field in setup's data migration method
-
N°7212 - PHP 8.1: Migrate remaining usages of strlen() with null value
-
N°7213 - PHP 8.1: Migrate remaining usages of md5() with null value
-
N°7217 - Fix link creation between “Audit Domain” and “Audit category” with an “Audit Manager” profile
-
N°7231 - PHP 8.1: Migrate deprecated usages of rawurlencode() with null value
-
N°7244 - Fix ContextTag init in setup
-
N°7245 - Better log error occuring in RunTimeEnvironment::CallInstallerHandlers
-
N°7312 - Fix JS crash on Windows server when creating a custom version of 'UserRequest Overview' Dashboard
-
N°7336 - Fix warning from \DeprecatedCallsLog::NotifyDeprecatedPhpMethod with PHP 8.3
-
N°7343 - Better error message when compiling a PHP invalid dict file during setup
-
N°7416 - Setup: Add warning for optionnal PHP extension “APCu”
-
N°7474 - Fix setup crash when the last profile of a user is removed from the datamodel
-
N°7477 - Fix DataSynchro made without administrator profile to create SynchroLog
-
N°7480 - Fix test-red and light-grey css related setup warning
-
N°797 - DataSynchro deletion includes replica cleaning
For iTop designers
-
N°2443 - Fix AttributBoolean doesn't accept yes/no value
-
N°2909 - Fix search on Enum, Date, TagSet,… with index
-
N°3236 - Fix trackinfo in CMDBChange when using core/update with REST
-
N°3363 - Add three favicons in branding
-
N°4314 - Uniqueness rules can report duplicates that user cannot see due to Silo
-
N°6228 - Prevent removing last user Profil: AttributLinkSet property “with_php_constraint” allows to propagate CheckToWrite() to target object.
-
N°6695 - Allow multilines dict entries in portal tooltips
-
N°6964 - Add API to allow modules to register files to include in the backup
-
N°7067 - Add setting to change the default “password change” URL
-
N°7136 - Portal: Add JS API to enable attachments IDs retrieval in an object form
-
N°7242 - Allow to mention new user IDs in Slack messages
-
N°7243 - Add non blocking feedback/notifications (toasts) API
-
N°7294 - Events when adding or removing an attachment are sent on the object instead of on the attachment
-
N°7310 - New event to conditionally remove transitions on an object
-
N°7345 - Allow to use a DateTime php object on Set() call on an AttributeDateTime
-
N°7410 - Introduce API for Welcome Popup in the backoffice
-
N°5145 - Fix attachments missing in new ticket when clone from an old ticket with object copier
-
N°5170 - Fix case where in a transition DoCheckToWrite returned error
-
N°5547 - Fix object deletion failing when friendlyname was too long
-
N°6543 - Fix display of AttributeText with width parameter
-
N°6643 - Fix \CMDBSource::LogDeadLock generating a TypeError
-
N°6647 - Fix JSON validation only accepting arrays as result + replace params done after validation
-
N°6660 - Fix define_if_not_exists flag not working on class nodes
-
N°6733 - Fix prompting of mandatory AttributeDateTime in transition forms
-
N°6766 - Fix dependent fields not updated due to WizardHelper.UpdateFields() being triggered too early
-
N°6767 - Fix error in ajax request when there's dict to load and no onready scripts
-
N°6960 - Fix “Unknown class XXX” when clicking on a class external key or n:n linkset
-
N°7008 - Fix missing background tasks in CRON when autoloaded and not in “developer_mode”
-
N°7042 - Fix check to write error when setting a ext. key programatically on the end-users portal
-
N°7046 - Fix “CAS_ServiceBaseUrl_Static” not found
-
N°7055 - Apply better default value for portal copy object link
-
N°7068 - Add emulation for apc_exists function
-
N°7079 - Fix event not fired when creating/updating a user with profiles
-
N°7133 - Fix linkset displayed as property, failing when OQL filter contains single quote or new line
-
N°7134 - Fix retrieving list of changes when editing URP_UserProfile
-
N°7268 - Fix method SetComputedDate failling on Date only attribute
-
N°7279 - Fix compilation issue with AttributeClass field defined in XML
-
N°7344 - rest.php : better error message when cannot execute OQL query (key param for core/get verb)
-
N°7399 - Remove deprecated Ticket methods from iTop Datamodel
-
N°7417 - Improve logged message when a Root Menu is not a MenuGroup
-
N°7693 - Update polish translations thanks to @DudekArtur
-
N°7687 - Update german translations thanks to @Attila0428
-
N°7686 - Update dutch translations thanks to @Hipska
-
N°7652 - Update italian translations thanks to @DarkNight97boss
Technical changes
-
N°4897 - Add method to improve deprecated PHP API logs (eg. for \iPageUIExtension)
-
N°5298 - Upgrade CKEditor to version 5
-
N°5580 - Audit JS libs and see if they are available on NPM
-
N°5621 - Add not managed JS dependencies to NPM to get updates on vulnerabilities
-
N°5808 - Update symfony version to next Symfony LTS 6.4
-
N°5809 - Update PHP libraries versions
-
N°5810 - Update JS librairies (iTop 3.2)
-
N°6050 - Add compatibility with MariaDB 10.11
-
N°6097 - Enable PHP unit tests on a custom DataModel
-
N°6103 - Remove jQuery Hotkeys plugin
-
N°6558 - Add test to check iTopDesignFormat::$aVersions consistency
-
N°6599 - Update moment.js (known vulnerabilities with high CVSS scores)
-
N°6632 - ItopDataTestCase : replace annotations by setting options in PHP
-
N°6658 - Boost PHPUnit tests execution
-
N°6752 - PHP unit tests: Migrate usages of unitestautoload.php to composer autoloader in the core
-
N°6754 - PHP unit tests: Add local PHPUnit XML files to .gitignore
-
N°6805 - Add reference to classes implementing \iWorkingTimeComputer in the datamodel (meta tag)
-
N°6886 - Add OAuth tests folder to removable directories list
-
N°6937 - Symfony 6.4 - Handle Symfony configuration files
-
N°6967 - Deprecated \cmdbAbstractObject::DBDeleteTracked_Internal
-
N°7044 - Move language attribute from ActionEmail to ActionNotification
-
N°7054 - Rework the UpdateImpactedItems calls on Tickets
-
N°7062 - Add unit test to ensure that setup SCSS is compiled correctly
-
N°7170 - PHP 8.3: Fix usages of get_class() without argument
-
N°7179 - Remove unused code in Action
-
N°7246 - New dict tests on duplicate definitions in same file + translated keys with tildes
-
N°7251 - Deprecate unused JS libs (iTop 3.2)
-
N°7264 - Update unmaintained JS libs to their latest versions (iTop 3.2)
-
N°7297 - Doing npm install removes web.config file and changes package name
-
N°7314 - Add Symfony Response alternative to Webpage::output()
-
N°7315 - Add new predictible API to add JS / CSS files to a \WebPage
-
N°7328 - Deprecate js/jquery.autocomplete.js
-
N°7331 - Add cleanup script for NPM dependencies
-
N°7355 - Update JS libraries managed via NPM (iTop 3.2)
-
N°7407 - Ease iTop installation via unattended CLI by using installation.xml choices
-
N°7494 - Select languages that “highlightjs” supports
-
N°7697 - Add method to rename DB table during setup
-
N°7619 - Restore cascading in object deletion for legacy extensions
-
N°7588 - Fix .env.local not working for the portal since Symfony 5.4 migration
-
N°7146 - Fix style not applied in list in the end-users portal in iTop 3.0+
-
N°7142 - Compiler issue - enum value modification : …DOMNode::removeChild() …
-
N°7131 - Changing the Org of a Person having User with Allowed Orgs, breaks with Synchro LDAP
-
N°7127 - Upgrade handlebars.js to v4.7.8
-
N°7024 - Fix opening an object with abstract class indirect linked set in Portal
-
N°6992 - Fix “add lnk” popup title: replaced class name by its label
-
N°4342 - Improve generic bulk deletion function with memory limit handling
-
N°7410 - Introduce a new welcome popup API
Security
-
N°7423 - Align UserTokens to PersonalToken with allowed contexts
-
N°7075 - Add check for Content Security Policies (CSP) in the setup
-
N°7364 - Full path disclosure when graphviz is not installed
-
N°4368 - iTop pages include security X-Content-Type-Options HTTP header
-
N°6455 - Update JQuery UI from 1.12.1 to 1.13.2 (fixes vulnerabilities)
-
N°6600 - Portal attachment download : whole SQL query displayed on non existing attachment id error
-
N°6777 - Fix XSS vulnerability in dashboard title
-
N°6948 - CVE-2023-46734: Potential XSS vulnerabilities in TWIG CodeExtension filters
-
N°6458 - CVE-2023-45808 Can create objects in non allowed org by forging http query in both Console and Portal
-
N°6560 - CVE-2023-43790 XSS in friendlyname in object details
-
N°6606 - CVE-2023-44396 XSS vulnerabilities in dashlet ajax operations
-
N°6800 - CVE-2023-47626 Fix stored XSS in authent token
-
N°6951 - CVE-2023-48709 Fix CSV injection in Excel from an iTop CSV export file
-
N°6989 - CVE-2023-48710 Limit pages/exec.php script to PHP files
-
N°7124 - Applied OWASP recommendations on Ajax calls against CSRF
-
N°7374 - CVE-2024-31448 - Fix XSS vulnerability in link CSV import
-
N°7448 - Forbid user enumeration through Rest API
-
N°7449 - CVE-2024-32870 - itop hub connector Information disclosure
-
N°7455 - Fix SSRF through arbitrary PHP class instantiation
-
N°7542 - Security hardening: only route if no operation is present.
-
N°7603 - Fix XSS injection in run queries page
Localization
-
N°6641 - Update czech translations (thanks to @Stetinac !)
-
N°6869 - Update chinese translations for ProfilesMenu thanks to @chileeb
-
N°6954 - Update english translations thanks to @jkoch22
-
N°7077 - iTop hungarian translations
-
N°7143 - Fix inconsistencies in datamodels/2.x dictionaries
-
N°7247 - Update italian translations thanks to @DarkNight97boss
-
N°7428 - Fix spelling typo in FR dictionary on lnkxxxToFunctionalCI classes
3.1.3
For Users
-
N°7219 - Fix broken dashboard having special caracters in their title
-
N°8134 - Fix Portal user profil brick edition
For Administrators
-
N°7916 - Fix missing charset when sending emails with attachments
-
N°7917 - Fix emails classified as spam due to incorrect `Message-ID` thanks to @vlk-charles
-
N°7925 - Fix incorrectly formatted In-Reply-To email header
For iTop designers
-
N°8131 - Protect event DB_LINKS_CHANGED on deleted object
Security
Severity High
-
N°7770 - CVE-2024-52601 - Secure Direct Object Reference + prevent Mass Data Leak
-
N°7776 - CVE-2025-24021 - Prevent mass assignement of fields not present in form
-
N°7810 - CVE-2025-24022 - Prevent Portal code injection
Severity Medium
-
N°7980 - CVE-2024-56157 Fix self XSS in CSV Import
3.1.2
New
-
N°7310 - New EVENT_ENUM_TRANSITIONS to hide on the fly some Transitions
-
N°7294 - Send EVENT_XXX_ATTACHMENT_TO_OBJECT on the target object instead of the attachment object
Fixes
-
N°7217 - Fix user rights to create a link between “Audit Domain” and “Audit category” with an “Audit Manager” profile
-
N°7137 - DataSynchro: Remove “Organization” as default value for SynchroReplica→dest_class
-
N°7122 - Portal: Hide log off button when user can't actually log off (eg. SSO using SAML or other providers)
-
N°4314 - Fix Uniqueness rules not working with Silo
-
N°6993 - Fix bulk transition on object containing a blob
-
N°7491 - Fix Email-reply trigger is not executed in some cases
-
N°7645 - PHP 8.1: Fix usage of strpos() & str_replace() with null value when compiling empty dictionary entries
-
N°7619 - Fix object deletion not cascaded for legacy extensions: OnDelete() called again
-
N°7526 - Fix profile input: persistent filters even after blur
-
N°7405 - Cache files access is more protected against concurrent access
-
N°7344 - rest.php : better message when cannot execute OQL query
-
N°7343 - Better error message when compiling a PHP invalid dict file during setup
-
N°7336 - Fix warning in \DeprecatedCallsLog::NotifyDeprecatedPhpMethod with PHP 8.3
-
N°7302 - Fix wrong unit name in \SetupUtils::HumanReadableSize
-
N°7288 - Fix page crash due to unescaped characters in relations row actions
-
N°7268 - Fix method SetComputedDate failling on Date only attribute
-
N°7255 - Fix misc. stylesheets not working in portal since N°7047
-
N°7245 - Bettor logs on RunTimeEnvironment::CallInstallerHandlers exceptions
-
N°7232 - Fix UI:RunQuery:Error containing a placeholder
-
N°7231 - PHP 8.1: Migrate deprecated usages of rawurlencode() with null value
-
N°7213 - PHP 8.1: Migrate remaining usages of md5() with null value
-
N°7212 - PHP 8.1: Migrate remaining usages of strlen() with null value
-
N°7172 - Adding HTML markup for n:n set properties in 3.1 (for Behat)
-
N°7147 - Fix error HTTP 500 due to access_token not URL decoded
-
N°7143 - Fix inconsistencies in datamodels/2.x dictionaries
-
N°7142 - Fix compiler issue - enum value modification : …DOMNode::removeChild() …
-
N°7134 - Fix list of changes for class URP_UserProfile
-
N°7133 - Fix Linkset displayed as property failling when filter contains single quote or new line
-
N°7127 - Upgrade handlebars.js to v4.7.8
-
N°7118 - Act on guaranteed object deletion, with the object still accessible
-
N°7085 - Fix infinite loop in login page until fatal error occurs
-
N°7080 - Fix EVENT_DB_LINKS_CHANGED not fired when deleting a user
-
N°7079 - Fix EVENT_DB_LINKS_CHANGED not fired when creating/updating a user with profiles
-
N°7077 - iTop hungarian translations
-
N°7052 - Fix PHP notices in synchro_import.php (3.0.1 regression) (thanks to Gilbert Breton !)
-
N°7047 - Fix unwanted Attachment fields on Unitary requests forms in Global Request management
-
N°7042 - Fix check to write error when setting a ext. key programatically on the end-users portal
-
N°7039 - Fix placeholder :current_contact->id not working in OQL in iTop 3.1
-
N°7024 - Fix opening an object with abstract class indirect linked set in Portal
-
N°7021 - Fix error log and useless compilation time due to SCSS file unnecessary compilation
-
N°7017 - Fix rebuilding expression-cache causing a PHP fatal error
-
N°6968 - Improve audit performance
-
N°6889 - Fix backup on localhost with MariaDB >= 10.6.1 since iTop 2.7.9
-
N°6826 - Fix sql value on file attribute of DocumentFile class
-
N°6660 - Fix define_if_not_exists flag not working on class nodes
-
N°6543 - Fix display of AttributeText with width parameter
-
N°5775 - Allow configuration of OAuth client on MS Azure with single tenant
-
N°5547 - Fix object deletion failling if friendlyname too long
-
N°4631 - Fix display issue when description field is totally open in vertical layout
-
N°4164 - SAML - Hide logoff from portal
-
N°3448 - Framework field size check not correctly implemented for multibytes languages/strings
Security
-
N°4368 - iTop now sends the X-Content-Type-Options HTTP header (See wiki)
-
N°6455 - Update JQuery UI from 1.12.1 to 1.13.2 (fixes vulnerabilities)
-
N°7075 - Add check for Content Security Policies (CSP) in the setup
-
N°7603 - Fix XSS injection in run queries page
-
N°7548 - Fix Stored Self XSS in preferences
-
N°7545 - Fix Self XSS in portal picture upload by following owasp recommendations
-
N°7455 - Fix SSRF through arbitrary PHP class instantiation
-
N°7449 - CVE-2024-32870 - itop hub connector Information disclosure
-
N°7448 - Forbid user enumeration through Rest API
-
N°7375 - CVE-2024-31998 - Fix XSS and CSRF combined security issue on CSV import
-
N°7374 - CVE-2024-31448 - Fix XSS vulnerability in link CSV import
-
N°7364 - Full path disclosure when graphviz is not installed
-
N°7124 - Following the OWASP recommendations about Ajax calls to secure them against CSRF attack
3.1.1
-
Using Global requests management, then upgrade to version 1.4.1 before or after upgrading to iTop 3.1.1.
Product specific
-
N°6725 - Customizing Request Template no more generates presentation error messages in Designer during MTP
-
N°6556 - Authentication with OpenID: Add possibility to customize display of login buttons
-
N°6499 - Calendar view: Display Attribute Date (without time) and add last day in time span.
Mail to ticket automation
-
N°6372 - Reconcile email in conversation, so a reply to the initial email, ends in the same ticket
-
N°5934 - email with a “message”_id too long causes an avalanche of tickets
-
N°5613 - PHP 8.1 : Fix mailbox password in clear with PHP warning
-
N°4081 - Fix date and “uploaded by” for Attachment uploaded by mail to ticket
-
N°6735 - Restoring notifications in case of received mail can't be transformed in a ticket
- Unexpected OVH filtering of mails with attachment “.eml” and MimeType “text/plain” -
Approval process automation
-
N°6578 - Update czech translations (thanks to @Stetinac!)
-
N°6827 - Fix regression with expiration date not working correctly on Approval Rules
iTop standard
-
3.1.1-1 : Fix regression from 3.0.0 in CAS authentication: class ServiceBaseUrl missing
For users
-
N°938 - Improve print of portal object page and portal dashboard page
-
N°6555 - Add class description in tooltip of Dashlet badge
-
N°6861 - Display warning when creating/editing a mandatory blob in modal
-
N°5145 - Object-copier : Fix attachments missing in new ticket when clone from an old ticket with object copier
-
N°5786 - Restore color on bold text in logs and description (HTML fields)
-
N°3767 - Impact analysis: Display filtering box on CIs list and groups
-
N°3715 - Export above 1000 entries takes into account obsolete data user preference
-
N°6557 - Fix adding a contact to ticket on ticket creation in portal with PHP 8.1
-
N°5136 - Fix object selection ignoring “show obsolete data” user parameter
-
N°6903 - Fix crash when emptying file attribute (eg. picture of a contact)
-
N°7005 - Fix portal stylesheets not being re-compiled when outdated
-
N°6766 - Fix dependent fields not updated while editing an object
-
N°6734 - Fix “Unable to render this dashlet.” when adding a new dashlet on a dashboard
-
N°6733 - Restore prompting of mandatory AttributeDateTime in transition
-
N°6421 - [iTop 3.0.3] Flag mandatory and read_only is prompted
-
N°6651 - Fix bulk modify of objects with an n:n displayed as property (3.1.0)
-
N°6452 - Improve Personal Token to avoid auto-lock
-
N°6451 - Improve Personal Token creation to align to iTop standards
-
N°6450 - Fix useless message when moving outside of “My account” page
-
N°6152 - Fix criteria & object list loaded twice in object search
-
N°5948 - Fix dashlet list crashing when User set a “number of objects per page” which is not a number
-
N°4494 - Fix auto-locking when combining a log save and a transition (Firefox?)
-
N°3441 - Portal: Fix failure to open an object containing a link to an archived object
-
N°6905 - Typo on EN User deletion feedback
-
N°6706 - Wrong dictionary entry for FR - Lnk Provider Contract / Service
-
N°6646 - Wrong dictionary entry for FR - Lnk Contact / Contrat
-
N°6598 - Improve ZH-CN translations
-
N°5491 - Fix inconsistent dictionary entries regarding arguments to pass to Dict::Format
For administrators
-
N°6531 - Trigger on Update on LinkedSet attributes, activated as soon as a remote object is added, updated or removed
-
N°6133 - Allow to add extra files to backup and restore
-
N°6436 - Add performance Audit probes and reports download capability
-
N°6901 - Monitoring: Enable tracking of iTop active sessions
-
N°6831 - Prevent links modification when locked by a synchro data source
-
N°6874 - Fix encoding issue in out-going emails
-
N°6340 - Fix permission refused when sending an email and renewing Auth token in synchronous mode
-
N°6677 - Fix notification in test status send only to test recipient and no more all mail addresses
-
N°6824 - Fix notification with current_contact placeholder trigger hundred of email sent
-
N°3465 - Fix attachment file name hardcoded to “uploaded-file” when imported from CSV import
-
N°6123 - Add warning when launching a backup on MariaDB > v10.6.1 with localhost
-
N°6963 - Setup: Add warning: “PHP min 8.1 required for iTop version 3.2.0”
-
N°6887 - Fix excessive OQL requests to display user's grant matrix
For iTop designers
-
N°3506 - Creation in pop-up from external key widget, allowed to users with write access and no more bulk write.
-
N°6546 - XML filter is taken into account by n:n displayed as property (tagset widget)
-
N°6385 - Allow to disable LinkedSet (1:n & n:n) edition by XML
-
N°6228 - Prevent 1:n and n:n edition on host constrains (eg. Prevent removal of last User Profile,…)
-
N°6547 - Prevent n-n link edition if read-only in a lifecycle state
-
N°6228 - Allow easy LinkedSet computation (count, sum,…) on the fly, as soon as a remote object is added, modified or removed
-
N°6667 - Trigger Apply stimulus filter is executed on resulting object after update
-
N°6849 - Setup: improved message in case of unmet module dependencies
-
N°6815 - DataModel: change attribute type of SLA.customercontracts_list
-
N°6814 - Datamodel: remove lnkConnectableCIToNetworkDevice uniqueness rule
-
N°6747 - Fix presentation error in Designer during MTP after UserLDAP customization
-
N°6682 - Allow delegation of Audit Domain, Category and Rule classes access
-
N°6695 - Support multi-lines dictionary entries in portal tooltips
-
N°6810 - Cautious: semantic attributes are visible by design to anyone, as friendlyname on relations.
-
N°6774 - Fix display n:n relations in portal when no remote object fields is requested
-
N°6866 - Fix display issue when defining fields with apostrophe in their label
-
N°2909 - Fix search on Enum, Date, TagSet,… with index
-
N°6795 - Fix GetOriginal API broken from 3.0.0 to 3.1.0 when used in AfterUpdate / OnDBUpdate
-
N°6647 - Fix JSON validation only accepting arrays as result + replace params done after validation
-
N°6767 - Fix ajax request error when there's dict to load and no onready scripts
-
N°6976 - Restore log of \DeprecatedCallsLog::ENUM_CHANNEL_PHP_LIBMETHOD
-
N°6967 - Deprecates \cmdbAbstractObject::DBDeleteTracked_Internal
-
N°6966 - Deprecates cmdbAbstractObject::DBCloneTracked_Internal
Security
-
N°6989 - CVE-2023-48710 Restrict pages/exec.php to PHP files
-
N°6951 - CVE-2023-48709 Fix CSV injection in Excel from an iTop CSV export file
-
N°6948 - CVE-2023-46734 Fix potential XSS vulnerabilities in TWIG CodeExtension filters
-
N°6917 - CVE-2023-47123 Fix XSS vulnerability in n:n relations “tagset” widget
-
N°6908 - CVE-2023-47622 Fix XSS vulnerabilities in ajax operations
-
N°6801 - Fix access to backup file without authentication
-
N°6800 - CVE-2023-47626 Fix XSS vulnerabilities in authent token
-
N°6778 - Fix XSS vulnerability in shortcut creation
-
N°6777 - Fix XSS vulnerability in dashboard title
-
N°6618 - Fix crash due to router's cache containing an integer instead of an array
-
N°6614 - XML ENTITY EXPANSION - Deny of Service attack not exploitable
-
N°6606 - CVE-2023-44396 Fix XSS vulnerabilities in dashlet ajax operations
-
N°6600 - Portal attachment download : remove SQL query display on non existing attachment id error
-
N°6581 - Dashboard: Use relative path when editing to avoid full path disclosure vulnerability
-
N°6560 - CVE-2023-43790 Fix XSS vulnerabilities in friendlyname in object details
-
N°6552 - CVE-2023-38511 Fix dashboard allowing to load multiple files and urls
-
N°6548 - Hide DBHost and DBUser in log
-
N°6458 - CVE-2023-45808 Fix object creation in non allowed org by forging http query in both Console and Portal
-
N°6457 - Fix possibility for attackers to upload files to any organization
3.1.0
Product specific
-
N°1150 - Write request template data though the REST/JSON API
-
N°3482 - Email approval request : Set sender (from and reply to) display name / label in action email
-
N°6180 - Improve Approval Notification display with fieldset and tooltips
-
N°6233 - Communication: Add search criteria, changed labels and add tooltips
-
N°6004 - Add out-of-the box examples of hyperlinks
-
N°6221 - Attachments not added when emails from thunderbird
-
N°5403 - Fix notifications not working if “email-reply” not enabled by default
-
N°5488 - Improve error message for invalid DM class in auto-dispatch rules
-
N°5428 - Request template: fix autocomplete field so it can also be a master field
-
N°2144 - Embedded libs (POP3) not supported anymore and can't be deployed natively on some distribution
-
N°2638 - Fix processing of mail attachments without Content
-
N°4170 - Fix encoding issue (long mail subject and MIME UTF8 encoded data on multiple lines)
-
N°3422 - Show attachments metadata when choosing the one to send by email
-
N°6386 - Add rank 50 on dispatch value of Incident and UserRequest in dispatch extensions
iTop standard
-
3.1.0-3 : N°6710 - 6716 - Performance issue and high memory consumption on operation on Persons and Ticket classes (ex data synchronisation)
-
3.1.0-2 : N°6618 - Fix crash due to router's cache containing an integer instead of an array
-
3.1.0-1 : official release number, 3.1.0 was never published.
For users
-
N°3200 - New “Filter list…” icon on datatables widgets
-
N°6147 - Filter list : tooltip and new action
-
N°3190 - Edit n:n LinkedSetIndirect in object details using a tagset-like widget
-
N°1212 - Bulk actions on links attributes of an n:n relation
-
N°803 - Allow display & edition of attributes on n:n relations on Portal
-
N°6398 - Portal: Allow linkset visible attributes to be limited to attributes defined in a zlist
-
N°5972 - Allow User creation in Pop-up from details of a Person
-
N°6347 - 1:n Add nice french dico entry on standard 1:n relationship
-
N°6339 - n:n Add nice french dico entry on standard lnk
-
N°6223 - 1:n & n:n - Pop-up creation/edit: set key to host in read-only
-
N°6219 - 1:n Read: tooltip, modal title and message on Add-Edit-Remove-Delete
-
N°6212 - Report Target class info on Trigger, so it can be displayed in complementary_name
-
N°6154 - n:n Read - tooltip, confirmation title and message on Add-Edit-Remove
-
N°6153 - n:n - Polish edition in Tagset
-
N°5976 - Add modal creation for linksets displayed with tagset-like widget
-
N°6148 - Add icon on Ticket class standard datamodel and other classes
-
N°5920 - Add linkset's description as corresponding tab's tooltip in object details
-
N°3213 - Order transition attributes as in the “details”
-
N°6200 - Harmonize menu entries
-
N°5042 - “Problem” tickets display is inconsistent with other types of tickets
-
N°6392 - New icon for adding a search criteria
-
N°6203 - Improve standard DM to use overcard and complementary name
-
N°6159 - Improve Mail Notification display (columns, status, fieldset, tooltips)
-
N°5908 - Add a description on “known error” tab on UserRequest and Incident
-
N°6357 - Prevent entering same password on change user password
-
N°4838 - Redirect to login page automatically on logoff
-
N°6240 - Improve display of picture in read or edit mode
-
N°5971 - Prevent changing the Org of a Person having Portal User with Allowed Orgs
-
N°6338 - Add organization and location on standard classes: all Interfaces, LogicalVolume & NASFileSystem
-
N°6331 - Add Service tab in Provider Contract
-
N°4703 - Add “chat” / “in person” as possible “origin” value for tickets
-
N°3889 - Add default search criterion on SLA and SLT
-
N°4702 - DataModel : fix attribute type for SLA.customercontracts_list
-
N°5822 - Do not display the tab separator in scroll mode when there is only one tab
-
N°5335 - Inactive hyperlink attributs on list with radio or checkbox displayed within an object in edition
-
N°681 - Fix multi-lines attribut not supported in n:n edition
-
N°3067 - LinkedSet multilines attributes are editable in pop-up
-
N°6188 - Fix cancellation of creation in pop-up from parent object edition, no more returns to object list
-
N°6169 - Prevent Profile creation from Link object
-
N°5923 - Align panel's header within another panel when it has no icon
-
N°5529 - Fixed notification on object creation with $this→xxxx_list$ placeholders
-
N°4148 & N°5350 - Fix in 1:n in place edition, deleted object re-appears
-
N°2250 - Fix DisplayObject with ormLinkSet ignoring Removed
-
N°2212 - Fix tracking level on AttributeLinkedSetIndirect (probably fixed in 2.7.x)
-
N°6054 - Fix display of LinkedSet indirect with an UNION OQL using different aliases
-
N°5609 - Fix regression when displaying a list in a transition
-
N°1876 - Fix regression on LinkedSet, new object and prefill of read_only attribute
-
N°5906 - Fix Impact Analys not updated after link class modification in details mode (EVENT_DB_LINKS_CHANGED)
-
N°5825 - Add label, friendlyname, details view, uniqueness rules on Link classes
-
N°5871 - Navigation menu: Show ellipsis on long menu group labels
-
N°5872 - Navigation menu: Wrap menu group label instead of ellipsis in drawer
-
N°5681 - Add support for “Ctrl + Enter” and “Meta (Cmd) + Enter” submit on multi-line fields
-
N°5575 - Mouseover Tooltips for tabs
-
N°4852 - iTop menu : use “+” dict entries
-
N°4737 - Adjust button position in iTop hub connector
-
N°4798 - Change attribute “description” of Service class, from string to text
-
N°5124 - Fix edition of relation between a NetworkDevice and a ConnectableCI
-
N°5703 - Fix navigation menu drawer under dashlets on Safari
-
N°5174 - Fix tagset edition on small window & too many tags
-
N°6174 - Fix download from the portal of attachments on objects without org_id
-
N°6250 - Fix PHP 8 issue on datatable when one or more column are before the friendlyname
-
N°6216 - Fix line-height being too big in the attachments table
-
N°5423 - Fix invalid value on AttributeURL with custom validation pattern
-
N°1608 - Fix organization attachments not visible for some users
-
N°5671 - Fix Excel export of query phrase
-
N°5834 - Fix activity panel disappearing when creating a Ticket in 'resolved' state
-
N°6077 - Attachments: set values for creation_date and user_id fields if not provided
For Administrators
-
N°5960 - Configurable Login Screen
-
N°6370 - Replace Audit Category menu by a dashboard
-
N°1350 - Audit: Introduce audit domains and ability to choose one before running the audit
-
N°918 - Translate placeholder in notifications
-
N°6320 - Add Password Expiration Enforcement and User authentication by token
-
N°5873 - Audit : Set threshold level and colors by Rule
-
N°2199 - Request history tables without the Admin profile
-
N°5559 - Enable User anonymization created then obsoleted by a DataSynchro
-
N°4010 - MTT: prevent production configuration file overwritte with test version
-
N°2889 - Add counter & triggers on file attributes / attachments downloads
-
N°6311 - User management, add a Caselog on User class
-
N°5993 - Add purge mechanism for log files
-
N°2639 - Improve tooltips dictionnary entries and details of technical classes
-
N°4921 - Add support for attcode & attvalue parameters in URL to access an object
-
N°4454 - Measuring the use of the query phrase book
-
N°5915 - Display n:n in Trigger and Action using tagset widget
-
N°5841 - Non-admin managing User can't see Administrator Users
-
N°5106 - New Users tab on Person, visible to User manager only
-
N°4919 - Application upgrade: new 'Launch iTop setup“ button
-
N°6305 - Fix export of RemoteApplicationConnection and ActionWebhook classes
-
N°5897 - Improve deprecated logs relevance for PHP “trigger_deprecation”
-
N°2013 - Setup: Cannot execute if existing config file contains an inaccessible MySQL server
-
N°6198 - Trigger OnObjectUpdate is not executed when attribute is updated via OnUpdate
-
N°6009 - Fix click twice to restore a backup
For customization
-
N°6213 - Enable iTop User to suscribe or unsuscribe to a Ticket Notifications
-
N°3191 - Introduce summary cards for objects hyperlinks
-
N°6381 - Add rank on Enums of default DataModel
-
N°5968 - Add structural data for Brand, OSFamily and OSVersion
-
N°6236 - Read Request template data though the REST/JSON API
-
N°5368 - Allow all HTTP methods (not just GET / POST)
-
N°5366 - Add “path” field to ActionWebhook
-
N°1646 - Add possibility to sort Attribute[Meta]Enum either by code (default), rank or label
-
N°1345 - Add possibility to sort transitions automatically
-
N°4756 - Ease extensibility for CRUD operations : Event Service
-
N°6324 - CRUD Event for one time treatment before creation and before update
-
N°5916 - Generic message on Link Uniqueness rules
-
N°6385 - New optional “edit_mode” XML tag on AttributeLinkedSet (n:n) actions/none defaut action
-
N°6384 - Flag LinkedSet (Indirect) when the attribute is concerned by CheckToWrite
Technical bugs
-
N°2883 - Improve XML compiler robustness on branding logos
-
N°3070 - Menu creation fails when parent menu has also a parent menu
-
N°3141 - Deprecate legacy SQL build
-
N°3769 - Add missing HTML meta data on attributes in transition forms
-
N°3824 - History: Remove deprecated APIs from 2.7 and older
-
N°4280 - Fix module loading crash when 'datamodel' file doesn't exists (model.*.php)
-
N°4287 - Portal: Factorize TWIG extensions between portal and backoffice
-
N°4527 - Cleanup utils::GetImageSize()
-
N°4577 - Move service dependencies from “itop-bridge-cmdb-ticket” to another module
-
N°4621 - Fix naming inconsistencies of dirs inside /sources
-
N°4837 - Fix wrong date conversion in approval base on reject messages
-
N°4875 - Compiler : do not force the model.*.php file to be present in the module.*.php file ('datamodel' key)
-
N°4978 - Check incorrect condition in Action class
-
N°5066 - Clean CMDBSource methods
-
N°5072 - Fix default priority to undefined (not fixed if ComputePriority is overloaded)
-
N°5073 - Implements line actions in a datatable
-
N°5085 - Fix moving menu - compilation handle parent menu hierarchy
-
N°5172 - Add internal helpers to keep usage of null value in native PHP methods
-
N°5367 - Fix non-string values (boolean, null) converted into empty string
-
N°5369 - Fix BrowseBrick tree “opening_target” mode for “self” and “new” values
-
N°5391 - Incoherent UTF8 data length control
-
N°5410 - Handle non existing auloader files
-
N°5473 - Better logs when invalid JSON
-
N°5496 - Add <constants/> in itop-structure
-
N°5522 - Fix session storage (breadcrumbs) not cleared on logout
-
N°5551 - System information database size is way off
-
N°5622 - Fix backup cannot be done if TLS enabled with no CA
-
N°5659 - Introduce modal helper for the backoffice
-
N°5766 - Fix linkset not iterable as intended in DBObject::AfterUpdate
-
N°5779 - update-xml : ease XML migrations
-
N°5793 - HTML Sanitizer: Allow 'start', 'type', 'reversed' attributes in 'ol' tag and 'value' attribute in 'li' tag
-
N°5796 - Fix typo in method name
-
N°5944 - Fix new install error: Event APPLICATION_EVENT_METAMODEL_STARTED is not registered
-
N°6040 - Extensibility: Add prerequisites for future attribute type - Compilation & Designer extensibility
-
N°6041 - Extensibility: Add prerequisites for future attribute type - Portal extensibility
-
N°6042 - Extensibility: Add prerequisites for future attribute type - Console extensibility
-
N°6055 - Fix undefined offset error in synchro_exec.php
-
N°6100 - ObjectFormManager::OnSubmit : better log for DBWrite exceptions
-
N°6104 - Fix exception when silo attcode is not 'org_id'
-
N°6105 - Cleanup unnecessary use of dirname(FILE)
-
N°6125 - Issue with GetAttributeFlags and GetInitialStateAttributeFlags within iTop 3.0.2
-
N°6131 - Improve robustness of tooltips helper when no DOM element passed to CombodoTooltip::InitTooltipFromMarkup()
-
N°6139 - Add HTML metadata on activity panel to be aligned with regular fields
-
N°6140 - Add HTML metadata on custom fields to be aligned with regular fields
-
N°6172 - Remove fallback when no curl available
-
N°6179 - Tooltip attribute in field component (in Twig)
-
N°6265 - Improve performance due to too many call to current person in DB
Maintenance
Deprecation and libraries upgrade
-
N°3717 - History API : allow to set a non persisted current change
-
N°6388 - Fix MetaModel::IsValidClass on classes without fields and a php parent
-
N°6135 - Booking : hide / display on conditions
-
N°6132 - Add capability to disable/enable tabs dynamically
-
N°2783 - Add support for custom zlists
-
N°6261 - Deprecate \DataTableUIBlockFactory::MakeForRenderingObject() method
-
N°6102 - Deprecate JQuery Hotkeys plugin
-
N°5311 - Deprecate old backoffice stylesheets
-
N°5302 - Replace deprecated php strlen usages
-
N°5232 - Deprecate \CMDBObject::DBCloneTracked
-
N°4690 - Deprecate “FilterCodes” and remove some unused methods
-
N°4415 - Remove SetupPage::log*
-
N°3607 - Improve SCSS compiler method to include current variables so they can be used by extension's stylesheets
-
N°3357 - Deprecate core/expression.class.inc.php
-
N°2779 - Introduce auto-routing mechanism for backoffice pages
-
N°2363 - API : deprecate old linkedset update pattern
-
N°5412 - Upgrade to PHPUnit 9 to fix PHPUnit 8.5 error with PHP 8.1
-
N°5618 - Setup : Compatibility PHP 8.1
-
N°6101 - run_query : change ctrl+enter shortcut detection
-
N°3795 - Replace JS alert native calls with centralized informative modals
-
N°5985 - PHP 8.1: Fix FunctionExpression::Evaluate() “TO_DAYS” misalignment due to PHP 8.1 bug fix
-
N°4985 - Bugs PHP 8.0 on support/2.7 branch
-
N°4307 - Replace SwiftMailer by laminas-mail
-
N°4224 - Handle phpunit/phpunit-mock-objects E_DEPRECATED notices
-
N°5281 - Symfony 5.4 extensions controllers registration
-
N°3091 - Update unmaintained PHPUnit 6 to PHPUnit 8.5
-
N°5651 - Fix GetAbsoluteUrlModulePage() JS method not reporting parameters values
-
N°5279 - PHP 8.1: Migrate usages of deprecated strftime() function
-
N°5270 - Move “apereo/phpcas” lib from “authent-cas” module to core composer.json
-
N°5108 - Update embedded libs for PHP 8.0 (3.0 branch)
-
N°4822 - unattended_install : warning thrown in PHP 8.1
-
N°4628 - Upgrade bulma lib to avoid hack from N°4481
-
N°4517 - PHP 8.1 compatibility
-
N°4072 - Deprecate ajax.render.php xlsx_* operations
-
N°4034 - Deprecate duplicated TWIG extensions class
-
N°3950 - Deprecate old unreferenced methods that are @deprecated
-
N°3895 - Remove tests on “apc_xxx” methods presence
-
N°3390 - Upgrade from Symfony 3.4 to Symfony 5.4
-
N°2743 - Upgrade libraries
Localization
-
N°5947 - Error in a french translation - incident status
-
N°5946 - Error in a french translation - user preference
-
N°5792 - Update dutch translations thanks to @jbostoen
-
N°5625 - Dict error when opening a DocumentFile with the ES language
-
N°5571 - Fix some unused translations
-
N°5550 - Add missing french translation for “Other Transitions” button
-
N°5507 - Impact analysis: title of pages that display the dependencies is wrong
-
N°6419 - Update hungarian translations thanks to @tacsaby
-
N°6417 - Update chinese translations thanks to @purplegrape
-
N°6376 - Portal french menu naming (Requête ⇒ Demande)
-
N°6121 - Update hungarian translations (thanks to @tacsaby)
-
N°6013 - Update hungarian translations thanks to @tacsaby
-
N°5929 - Update hungarian translations thanks to @tacsaby
-
N°5706 - Update polish translations thanks to @DudekArtur !
-
N°4765 - Update brazilian translations thanks to @eduardomozart
-
N°6418 - Fix dutch translations on impact relation view
Security
-
N°6396 - CVE-2023-34443 CSRF vulnerability in the run_query.php page
-
N°6359 - Cross-site Scripting (XSS) - DOM XSS in activity panel
-
N°6358 - CSRF (Cross Site Request Forgery).on API Rest
-
N°6350 - CVE-2023-34445 XSS vulnerability on pages/ajax.render.php
-
N°6349 - CVE-2023-34446 XSS vulnerability on pages/preferences.php
-
N°6348 - CVE-2023-34447 XSS vulnerability on pages/UI.php
-
N°6002 - CVE-2022-24894 Prevent storing cookie headers in HttpCache (Symfony framework vulnerability)
-
N°5722 - CVE-2022-31402 XSS vulnerability via /itop/webservices/export-v2.php
-
N°5564 - CVE-2022-39261 Twig lib vulnerability
-
N°6238 - guzzlehttp/psr7 vulnerability
-
N°3863 - exec.php : security eforcementr
3.0.3
Product specific
-
N°5654 - Add UID option support on IMAP + OAuth
-
N°5230 - Fix error “Invalid ID given” in EmailReplica
-
N°5633 - Mail to Ticket crash when cannot decode message on IMAP + OAuth
-
N°5390 - Update german translations for OAuth client module
iTop standard
-
3.0.3-1
-
N°6124 - Workaround performance problem on the modification of an object with an n:n relation having a large volume
-
N°6085 - Fix UNION not supported in UserRightsProfile::GetSelectFilter
-
For users
-
N°5919 - Add missing linkset descriptions in french and other languages
-
N°5849 - Fix wrong encoding of external keys in “Header with statstics” dashlet
-
N°5317 - Handle overlapping tables when table cells have fixed widths
-
N°6068 - Setup : restore formatting of error messages
-
N°6023 - Restore upload of SVG file in AttributeImage
-
N°5918 - Restore activity panel display when DoCheckToWrite fails
-
N°5865 - Restore DoCheckToWrite error messages in portal
-
N°5834 - Restore activity panel display when creating a Ticket in 'resolved' state
-
N°5784 - PHP 8.0: restore mandatory attribute in transition form, fixing emptiness test
-
N°5729 - Fix disabled button in bulk update/transition when picking a value in a drop-down list
-
N°5603 - Restore autocomplete for an external key pointing to an abstract class with no friendlyname
-
N°5530 - Fix list of impacted elements (Impact Analysis) due to mixup in async JS files loading
-
N°5922 - Ext. key widget: Add class selection on “+” button if child classes exist
-
N°2916 - Fix CSV import of IPv6 addresses failing when reconciliation is done on the IP
-
N°5428 - Request template: fix autocomplete fields, which could not be master field
-
N°6014 - AttributeURL : default validation pattern not handling PRTG URL (containing commas)
-
N°5423 - Fix AttributeURL when changing the validation pattern, with a not compliant old value
-
N°5625 - Fix dict error when opening a DocumentFile with the ES language
-
N°2244 - Fix image attributes not being visible in PDF exports
-
N°5588 - Improve PDF export robustness when AttributeImage dimensions cannot be determined
For administrators
-
N°5553 - OAuth 2 : secure Client Secret in DB and any change force token regeneration
-
N°5430 - OAuth authentication : customize redirect landing URL
-
N°5333 - OAuth2: Redirect URL, Client ID or Client Secret changes trigger a message as the token must be regenerated
-
N°5867 - Display binary data size in SynchroReplica details
-
N°5727 - Fix REST API/get_related when using [impacts, up] with [redundancy: true]
-
N°6019 - Increase PHP min version to 7.1.3 to enable dependencies update
-
N°5535 - Fix PHP 8.0.x wrongly repported as not supported in iTop 3.0.2+
-
N°5490 - PHP 8.0: Fix crash of bulk modify with email notification / email approval request
-
N°5216 - Error “Invalid ID given” when sending ActionEmail using cron on a system with french locale
-
N°4974 - Avoid session fixation in login
-
N°5414 - Log invalid placeholders in Notification
-
N°5893 - Log more information when a trigger fails and raises an exception
-
N°5897 - Improve deprecated logs relevance for PHP “trigger_deprecation”
-
N°5611 - Fix missing composer files in itop-oauth-client
-
N°3805 - Fix collectors not working on itop 3.0 in seldom situations
-
N°5944 - Fix error on fresh install: APPLICATION_EVENT_METAMODEL_STARTED not registered
-
N°5765 - Setup: Never cache folder permissions test response
-
N°6016 - Setup : improve missing dependencies log
-
N°5235 - Setup : check temp dir permissions
-
N°5758 - Change setup test for GDPR consent
-
N°5523 - Setup wizard : use the ITOP_APPLICATION constant instead of hardcoded “iTop” string
-
N°5543 - Fix Warning on empty case log
-
N°5901 - Fix warnings in file system tab
-
N°5797 - Use LoadConfig method in all Email children classes
-
N°6020 - Decode method for \utils::EscapeHtml
-
N°5608 - Reorganize tests folders for better maintenance and contribution
-
N°5496 - Add <constants/> in itop-structure
-
N°4660 - Fix data synchro unit test failure due to another setting incorrect permissions on iTop conf file
WebHook 1.2.0
-
N°5368 - Allow all HTTP methods (not just GET / POST)
-
N°5589 - Fix sent request incorrect HTTP method due to new cURL options
-
N°5366 - Add “path” attribute in generic “ActionWebhook” for better compatibility with third-party webservices
-
N°5796 - Fix typo in ActionWebhook::GetRemoteApplicationConnectionFromActionWebhok()
-
N°5774 - De-hardcode webhooks configuration rights
-
N°5252 - Added Other/Generic type of Remote Application Connection
-
N°5367 - Fix non-string values (boolean, null) converted into empty string
-
N°5179 - Add chinese translations (thanks to @bdejin)
-
N°5266 - Add dutch translations (thanks to @jbostoen)
-
N°5050 - Add spanish translations (thanks to Miguel Turrubiates)
-
N°5473 - On JSON format exception, more context log and specific Exception impl (InvalidJsonValueException)
Security
-
N°6017 - CVE-2021-46743: Firebase PHP-JWT key/algorithm type confusion
-
N°5741 - Deny use of get_config_parameter in Twigs
-
N°5725 - Prevent Twig privilege elevation to run system commands
-
N°5724 - CVE-2022-31403 : XSS vulnerability via /itop/pages/ajax.render.php
-
N°5722 - CVE-2022-31402 : XSS vulnerability via /itop/webservices/export-v2.php
-
N°5685 - Upgrade apereo/phpcas lib to fix vulnerability
For developers
-
N°3769 - Add missing HTML meta data on attributes in transition forms
-
N°4947 - Fix Email always picking “production” env config file
-
N°4449 - Console dashboard export : use relative path (full path disclosure)
3.0.2
Product specific
-
N°3979 - Request Template: handle initial values on dependent Fields
-
N°4425 - Calendar View: Fix not being able to click on hyperlinks in tooltips
-
N°5176 - Request Template: Add PHP 8.0 compatibility
-
N°4658 - Request Template: Fix itop-request-template module dependencies (missing templates-base)
-
N°5458 - Calendar View: Deprecate old unreferenced methods that are @deprecated
-
N°5373 - Customer Survey: Add PHP 8.0 compatibility
-
N°5096 - SAML configuration menu restricted to administrators
-
N°4780 - Brute Force Protection: Fix call to undefined method Combodo\iTop\Fence\Countermeasure\NoAnswerUntil::ResetCurrentCmdbChange()
iTop standard
-
3.0.2-1
-
N°5394 - CVE-2022-39214 Authenticated users can takeover any account
-
For users
-
N°5138 - Fix not being able to click on hyperlinks in tooltips
-
N°5408 - Enable mentions on classes with no image attribute
-
N°4834 - Mentions works with any alphabet (cyrillic, asian, corean…) thanks to Vladimir Kunin
-
N°5192 - Restore Green color to highlight OK objects
-
N°5071 - Fix properties tab on objects popup hiding in “…” overflowing button. Fix objects popup shrinking when scrolling.
-
N°4966 - Refresh the page after dashboard creation, to display the switch button
-
N°4927 - Hide date picker widget displayed in a new temporary column on the right
-
N°4918 - Fix “other tabs” pop-up menu displayed behind some others elements and so not readable
-
N°4739 - Add semantic on state for User classes (class icon, state)
-
N°5198 - Fix external key combo-box behavior when more than 150 results
-
N°5088 - Fix audit displaying only 10 rules per category
-
N°5060 - Fix long history display. “max_history_length” moved from 50 to 200.
-
N°5027 - Fix AttributeUrl default validation pattern not handling anchors starting with a digit
-
N°5024 - Fix missing entries in object search banner for external key criteria
-
N°4792 - Improve performance when editing an external key
-
N°5397 - Update Dutch translations
-
N°5050 - Update Spanish translations for 3.0 (thanks to Miguel Turrubiates)
-
N°5179 - Add Chinese translations thanks to @bdejin
-
N°5266 - Dutch translations for the webhooks extension
For administrators
-
N°5315 - Support of OAuth2 authentication protocol to send and receive emails
-
N°5373 - PHP 8.0 compatibility for iTop Community - Be cautious extensions might not be compatible
-
N°5395 - OAuthServer error messages, added to iTop error log
-
N°5389 - Restore linkset placeholder in notification (3.0.0 regression)
-
N°4888 - New url() placeholder in Notification, similar to hyperlink() but not clickable
-
N°5341 - Add tool to repair misalignment between Caselog and caselog index
-
N°3024 - Any class can be archive (no more limited to Ticket, Contact and FunctionalCI)
-
N°5318 - Fix error messages being HTML encoded when not necessary
-
N°5462 - Setup warning if the web server allows unauthenticated user to browse restricted folders
-
N°5393 - CVE-2022-39216- Security hardening against brute force attacks
-
N°4975 - Security hardening against server files read access
For developers
-
N°5389 - TriggerOnObjectUpdate has been moved after the reload, done if a linkset is modified
-
N°5383 - DBObject::EnumTransitions() is now an “overwritable hook”
-
N°5375 - Fix XML custo on Semantic field with hierarchy, breaking at compilation
-
N°5343 - Menu displayed under an user hidden parent menu, are hidden without crash
-
N°5143 - Fix FunctionExpression for DATE_FORMAT and formats %j, %k and %l
-
N°5033 - Add model file to 'itop-bridge-virtualization-storage' module to avoid compilation crash when lnkVirtualDeviceToVolume class is removed
-
N°4910 - Removed format control of old value of AttributeURL (new value must still be compliant to default URL pattern)
-
N°4715 - Remove deprecated legacy SQL build
-
N°5009 - Move empty “icon” tag under “class/properties/style” tag in XML 3.0 datamodel of all standard classes
-
N°4903 - Fix dynamic “app_root_url” conf. param. not used properly for the app. icon
-
N°5101 - Add an explicit message on setup when the state attribute, declared in semantic field property, referred to a non existing field.
3.0.1
Product specific
-
N°1115 - Approval Automation: Portal approver can now see, approve or reject any user requests waiting for their approval, regardless of their access rights
-
N°4675 - Approval Automation: Send approval request to approvers, even if the requestor cannot see the approvers
-
N°4451 - Approval Automation: Improve log entry on approval
-
N°4349 - Customized Request Form: Harmonize user feedback on drop-down mandatory template field
-
N°4827 - Mail to Ticket: add a log when email is bigger than 64K, as Ticket's description is then truncated.
-
N°4753 - Webhook: Fix malformed JSON with multiline payload and generic action
-
N°4585 - Webhook: Fix crash when payload is too big to be logged
-
N°4750 - Webhook: Add Microsoft Teams notification action
-
N°4603 - Webhook: Add ContextTag around response handler for more precise processing
-
N°4879 - Remove all deprecated function from iTopExtensions, Remove ajax_page & Remove deprecated function SetupPage::log_info
iTop standard
-
3.0.1-1: Fix regression introduced by 3.0.0:
-
N°5229: Caselog inline images lost after changing app-root url in 3.0.x
-
For users
-
N°4448 - Allow to easily unselect an Organization (top left menu)
-
N°4741 - Fix On mention trigger not working on object creation
-
N°4312 - Activity panel: Keep selected tab when switching between object details and edit
-
N°4479 - Impact analysis : Display and apply filter before display impact analysis graphical
-
N°4913 - Avoid object initials to overflow in medallions, by limiting them to 3 characters
-
N°4777 - UserRequest: fix selecting organization through hierarchy tree
-
N°4740 - Restore support of Dashboard attribute on abstract class
-
N°4705 - Fix newsroom messages not formatted correctly
-
N°4696 - Improve spacing between a fieldset and fields without fieldset
-
N°4694 - Fix wrong icon path for ServiceSubcategory in XML definition
-
N°4674 - CKEditor : fix different colors for PHP Snippet in edit and view
-
N°4671 - Dark Theme : fix additional tabs color
-
N°4619 - Fix line selection in tables
-
N°4582 - Improve look of Widget ExternalKey in drop-down mode with value selected
-
N°4576 - Fix search date widget wrongly displayed on the right, when entering directly a date
-
N°4977 - Fix search widget on ExternalField pointing to an ExternalKey, returning wrong values.
-
N°4570 - Harmonize inputs font size/weight
-
N°4564 - Refresh Tooltip for switching from standard dashboard to custo dashboard
-
N°4553 - Fix label size for “Greater/equals” in search for numeric attributes
-
N°4550 - Fix scroll bar in search for date attribute
-
N°4482 - Polishing : Export page
-
N°4311 - Bubble caselog: align console and portal for user name
-
N°4849 - Improve email notifications reading comfort (better flagging of conversation)
-
N°4814 - Improve image attribute placeholder when no default image
-
N°4787 - Object details: hide field tooltip when identical to the field label
-
N°4565 - Add a message indicator to caselog tabs toggler
-
N°3541 - Button: Improve user feedback during execution of the pressed button
-
N°2643 - Dropdown menu unusable in new SLA/customer contract
-
N°4513 - Prevent Portal User to apply a transition on an object not in his scope
-
N°4806 - Add text for dictionary entry UI:WelcomeMenu:Text
-
N°4934 - Improve German translations
-
N°4397 - update Turkish dictionnaries
For Admins
-
N°4766 - DataSynchro: Supports files and images data in the synchro_import.php
-
N°4515 - AttributeURL default validation pattern handles Sharepoint and Alfresco URL
-
N°4654 - Add license information in About iTop for non admin users
-
N°4525 - Fix french translation of extension source (Data or Hub) in System information and About iTop
-
N°4664 - Core Update : block zip file upload until files check returns OK
-
N°4642 - Core Update : limit the usage of this function to version which do not bring any new module
-
N°2884 - Core update: Fix Database version display
-
N°4764 - Remove iTop version from webservices/status.php
-
N°4665 - Fix notice in logs when uploading an SVG image in an AttributeImage
-
N°4652 - When XML compilation fails on a node which already exist, it specifies where it exist
For developers
-
N°4999 - Align internal saving process of new caselog entries to UI to fix CaseExchange inline images
-
N°4905 - Fix usage of ITOP_APPLICATION constant in dictionaries
-
N°4856 - Add backward compatibility parameters for extension developers
-
N°4836 - Fix dashlet editor if any implementation of iBackofficeDictEntriesExtension exists
-
N°4771 - Fix .make/composer/rmDeniedTestDir.php script issues
-
N°4761 - Fix license.xml content not displayed in setup with multi modules extensions
-
N°4725 - Fix DeprecatedCallsLog::NotifyDeprecatedFile doesn't handle ConfigException
-
N°4667 - Remove call to tooltip function
-
N°4578 - Dict::CloneString no more overwrite an existing entry
-
N°4541 - Allow exit code capture in CLI for CSV import script
-
N°4438 - Disable (temporarly) copy of precompiled stylesheets after setup
-
N°4433 - Fix “date_format” TWIG filter not working for date without time
-
N°4558 - Fix PHP notice in startTansaction and commit functions
-
N°4488 - Remove cmdbAbstractObject::GetSetAsHTMLSpreadsheet() from usable API methods
-
N°4760 - TwigBase : add possibility to control BreadCrumb
3.0.0
Product specific
-
N°1905-Customized request forms: Add TemplateField.max_combo_length to specify when to switch to autocomplete
-
N°3433-Communications to the Customers: Remove useless data in DataModel when itop-portal is not present
-
N°2527-Database maintenance tools: Add Hierarchy key restoration script
datamodels/2.x/combodo-db-tools/bin/rebuildhk.php
-
N°4265-Predefined response models: 3.0 compatibility
-
N°4266-Send updates by email: 3.0 compatibility
-
N°4077-User actions configurator: Allow to add an icon and a tooltip for each action.
-
N°3344-Approval process automation: Remove references to Flash
-
N°3345-Customer Survey: Remove references to Flash
-
N°3640-Customer Survey: Translations Spanish
iTop standard
New behaviors
For users
-
N°2847: Redesign iTop Console look and feel
-
N°2844: Redesign of Ticket Pages with Logs and Details
-
N°994: Integrated view of private and public caselogs
-
N°2836: Introduce bubbles conversation as default caselog rendering
-
N°3208: Add a Quick create feature (except for attachment and n:n relations)
-
N°3207: Global search now remembers past searches
-
N°3560: New object display mode “all tabs in one page”
-
N°1957: Add a filter box for quick retrieval of a menu
-
N°3294: Introduce counters in OQL menu entries
-
N°3198: Simplify edition of n:n relations (less clicks)
-
N°2875: Add possibility to mention people in caselogs
-
N°580: Autocomplete in case of namesake, displays other (configurable) information
-
N°923: Add user id to history
-
N°3712: Activity panel “edits” entries now show an icon to explain their origin (csv import, webservices, …) when not done by the user in the GUI
-
N°988: Object display hide automatically empty fieldsets
-
N°1004: View and Edit display of n:n relations are now identical
-
N°2508: Include Obsolescence icon within list and autocomplete
-
N°2390: Auto-complete “starting with” are displayed first
-
N°2907: Keep read-only tabs visible in object edit mode
-
N°1731: Allow Transitions without unnecessary confirmation
-
N°1836: On cancel, console user is redirected to the current class search page
-
N°2629: Allow user to choose default expanded/collapsed toolbar for richtext editors
-
N°3495: WorkOrder fields 'ticket' and 'end date' optionals
-
N°3837: Add missing title to standard datamodel dashboards
-
N°2639: Increase fields tooltip visibility and pertinence
-
N°2224: Portal: Enable tooltips for object's attributes description
-
N°3583: Change default max items per list from 10 to 20
-
N°3524: Add keyboard shortcuts to main actions
-
N°3274: Add “Service family” menu in 'Service Management for Providers' installation option, as it exists in other mode.
For administrators
-
N°463: Queries from Phrasebook usable in Notifications
-
N°3287: Notifications: Set sender (from) display name / label in action email
-
N°3455: Add option to pass json_data as file to REST API
-
N°3381: A healthpage is now available that returns a json status without any authentication required: https://iTOP_URL/webservices/status.php“
-
N°4096: In case of error when sending emails in the background, iTop can be configured to try again sending.
-
N°4261: Portal: in case of uncatched Exceptions, iTop can now write logs into the EventIssue class on an opt-in basis.
-
N°4354: Administrator accounts can be hidden with configuration parameter “security.hide_administrators”
-
N°4095: Add one time password user, which can only connect once into iTop
-
N°4036: An iTop user with a contact and Allowed organizations, must be allowed on his contact's organization. No-one can disable his own user, nor remove contact from its user, nor remove the profile which allow him to edit users, nor add a profile which would prevent him from editing users (such as 'Portal User' which deny access to the Console).
-
N°2699: Profile SynchroData Manager can see SynchroReplica
-
N°2713: Allow read access to synchro errors for non-administrator users
-
N°2330: Upgrade minimum PHP/MySQL version supported/required for iTop
-
N°3253: Disallow setup if PHP version not compatible
-
N°4332: include multi-LDAP into iTop Community
-
N°2527: Add Hierarchy key restoration as a DBTools
-
N°3625: Remove n:n classes from the “quick create” autocomplete based on the “is_link” tag of the XML
-
N°3575: Add curl as optional PHP module (required for Impact analyses)
-
N°3724: synchro_exec.php : now outputs the processed datasource
Customization
-
N°3185: Datamodel adds compact logo in branding
-
N°3182: Datamodel allows to redefine MenuGroup icons
-
N°3203: Datamodel: Add semantic for image & state attributes
-
N°2677: Datamodel: Add style definition for class & enum
-
N°3018: Add possibility for an object to have a specific image instead of the generic class icon
-
N°3822: Allow caselog ordering within datamodel XML
-
N°3245: Trigger OnObjectUpdate filters objects after their update
-
N°3217: Change iTop internal modules, add: itop-structure, itop-bridge-cmdb-tickets, itop-faq-light, itop-knownerror-light, remove: itop-knownerror-mgmt
-
N°2370: remove MySQL views in iTop, moved to an extension
UI
-
N°1447: Setup screens have fixed height, so the Next button remains under user's mouse
-
N°3722: Hide field description tooltip if it has the same content as field label
-
N°4336: When a tooltip of an action is identical to the label, do not display the tooltip (on console).
-
N°4078: Display in console object details, for custom shortcut actions, the icon (without label) if there is an icon specified.
-
N°4178: Stay on the same page when logging again from the “Login again” prompt
-
N°4082: Update German translations thanks to Itomig
-
N°3640: Update Spanish translations thanks to Miguel Turrubiates
-
N°3887: Max. number of displayed results now uses the 'max_autocomplete_results' configuration parameter.
-
N°3620: Add config. parameter “quick_create.show_history”
-
N°3621: Add config. parameter to disable “global search” history
-
N°3649: Add config. parameters: activity_panel.lock_watcher_period & activity_panel.entry_form_opened_by_default
-
N°3662: Add config. parameter to choose OneWayPassword hash algorithm
-
N°3894: Add config. parameter “activity_panel.prefilter_only_current_log”
-
N°3896: Add CKeditor icon for enhance WikiText URLs syntax, in console only.
-
N°3936: Add user preference to choose backoffice theme + “user_preferences.allow_backoffice_theme_override” config. param. to disable it
Bug fixes
-
N°1964: Fix: Focus stays on current tab when switching to edit mode
-
N°2560: Ignore double form submission, remove error “invalid stimuli in current state”
-
N°4050: Fix: When adding only an inline image to the caselog, the notification is triggered
-
N°331: Fix sort order of list during auto reloading in dashlet and menu
-
N°891: Make Ticket printing independent of browser
-
N°3821: UserRequest:OnInsert in full ITIL call the parent's method
-
N°3325: new version of CKEditor to fix display bugs
-
N°2950: Fix syntax highlighting (CKEditor) not working on AttributeHTML
-
N°3810: Avoid syntax highlighting that shouldn't take place
-
N°2534: Fix dashboard autorefresh to keep filtering on organizations
-
N°1634: List with “Autorefresh”, sum of items refreshed after object deletion
-
N°2511: Fix display of class with 2 dashboard attributes
-
N°3290: Fix attachments filename headers when downloading
-
N°3785: Fix corrupted attribute file on download
-
N°3166: Fix crashes if a “name” expression contains a quote
-
N°2946: Fix name displayed for field from a foreign class
-
N°2870: Portal: Fix “Notice: Undefined index: UI:PropertiesTab” on object form
-
N°2841: Prevent user deletion with not enough rights
-
N°2326: Zoom > 100% - tabs in second row not properly aligned
-
N°2251: Fix truncated tooltips
-
N°2225: Fix tooltips containing a quote
-
N°1397: Tooltip on Datasynchro no more truncated
-
N°2127: Fix field content overlapping outside of the object details
-
N°2788: Fix HTML fields/caselogs content overlapping with a big table or unbreakable word
-
N°3267: Webservices: Fix optional headers not being taken into account
-
N°3171: Friendly name and obsolescence flag now refreshed
-
N°4131: Always use the same dialog for this message instead of creating a new one every time we detect the user is logged off.
-
N°1056: Look: empty field not as high as others in object details
-
N°1505: Fix “Paste” button in iTop Ckeditor not working in all browsers
-
N°1745: Prevent malformed caselog entries from breaking activity panel
-
N°2007: Portal: Tooltips that do not contain text (empty tooltips) are no longer display on BrowseBrick items.
-
N°2852: Fix autocomplete selector error when selecting an object containing special characters
-
N°3680: Advanced search: Fix string criterion contains '0' returning all results
-
N°3944: Prevent a PHP “notice” when the log level is configured per-channel, but not all channels are listed in the config.
-
N°3987: Fix circular reference failures when creating Configuration items.
-
N°4029: Fix caching images in Chrome
-
N°4079: Typo in french dictionary on lnkApplicationSolutionToBusinessProcess
-
N°4105: Fix decimal number being truncated in GroupBy dashlet
-
N°4132: Look: Fix sizes being displayed as bits instead of bytes in Setup
-
N°4327: Fix JS “ReferenceError” in Application Upgrade
-
N°4385: Fix DBObject→GetRelatedObjectsUp behavior
-
N°4173: Reduce AttributeBlob memory footprint
Security
-
N°4362: Security: CVE-2021-41162
-
N°4129: Security: HTTP header “Content-Security-Policy: sandbox;” is send when displaying an AttributeFile directly in a browser's tab.This can be removed with “security.disable_inline_documents_sandbox” config. parameter.
Modernizations
Those changes can have an impact on extension developers:
Enhancements
-
MetaModel::GetStateAttributeCode($sClass) now returns the state code of class with states but no transition (eg. Person, Organization, PhysicalDevice, …)
-
N°3735: New method AddValue on DBObject for ITSM Designer users
-
N°3721: Toolkit: Restore previous behavior on “iTop update”: Delete all env-production folder
-
N°3657: Replace deprecate calls to jQuery event listeners (eg. ”.click“, ”.bind“, …)
-
N°3184: Upgrade JQuery UI (iTop 3.0)
-
N°2956: Upgrade jQuery to v3.5.1
-
N°3199: Add dependencies management system for JS/CSS
-
N°3010: IE11 not supported anymore
-
N°3009: PHP Minimum version raised to 7.1
-
N°2969: Add support for dictionaries folder in modules
-
N°2957: PHP namespace management through XML
-
N°2899: Setup: Add mbstring as mandatory PHP extension
-
N°2214: Add a PHP version check in CLI PHP scripts
-
N°2284: Replace JQuery Autocompleter plugin by JQuery UI Autocomplete widget
-
N°3811: UI.php : log stacktrace with debug level
-
N°2986: Reintegrate application menus from “welcome itil” into application
-
N°2738: Remove unused dict keys
-
N°2286: Remove usages of js/jquery.layout.js lib.
-
N°2737: Migrate table to DataTables plugin to be iso with the end-users portal
-
N°2766: Optimize columns load when using REST/JSON API core/get
-
N°2999: Optimize OQL
-
N°3123: Update the list of required PHP extensions
-
N°3154: Sample data Contacts : integrate new Combodo employees
-
N°3215: Internal: Refactor renderer files to be part of the autoloader instead of being load manually
-
N°3216: Internal: Refactor form files to part of the autoloader instead of being load manually
-
N°3231: Allow browser access to static resources files in the /lib folder
-
N°3251: Internal : Automated tests + refactoring for robustness of the code against SQL injection
-
N°3389: Change XML version from 1.7 to 3.0. From now on, the XML version will be aligned with iTop core version
-
N°3588: SCSS included/cascaded are used in compilation, on top of those declared in XML.
-
N°3663: Move exceptions to the same directory
-
N°3731: Add log of calls to deprecated files / PHP methods
-
N°3828: Remove MPDF coupling from iTop code
-
N°4024: Protect \iApplicationUIExtension::EnumAllowedActions uses
-
N°4158: New developer_mode.enabled config parameter
-
N°4246: MetaModel::GetPrerequisiteAttributes now provides $sClass parameter when calling AttributeDefinition::GetPrerequisiteAttributes() method
-
N°1047: “iTop” occurences in the dictionnaries have been replaced with the ITOP_APPLICATION_SHORT constant
-
N°3433: Remove useless data in DataModel when itop-portal is not present
-
N°3349: Clean references to the old Flash resources
-
N°3379: Introduce more modern tooltip lib. in the backoffice
-
N°4092: New data/.compilation-symlinks compilation flag and setup option
-
N°4155: Add ability to modify the content of MenuBlocks from outside the class
-
N°3617: Use user pref instead of localStorage for collapsible elements state saving
Deprecations
-
N°2393: Font Awesome remove v4 compatibility
-
N°2573: Remove MetaModel::GetNextKey et CMDBSource::GetNextInsertId
-
N°2548: Remove deprecated \DBObject::GetRelationQueries
-
N°2440: API : remove CMDBSource::GetNextInsertId
-
N°2591: API : deprecate \CMDBObject::CheckUserRights
-
N°2522: API : Deprecate SetupPage:log*
-
N°2372: API : remove \MetaModel::EnumLinksClasses and \MetaModel::EnumLinkingClasses
-
N°2362: API : remove DBInsertTracked / DBUpdateTracked
-
N°3792: Deprecate “buttons_position” configuration paramter
-
N°852: Cleanup: remove deprecated impact analysis algorithm
-
N°3748: Deprecation: old tooltip libs in the backoffice and the portal
-
N°3233: Remove “display template” feature from MetaModel
-
N°4176: Portal: Deprecate “AddParameterToUrl” function
2.7.12
-
N°7219 - Fix broken dashboard having special caracters in their title
Security with Severity High
-
N°7770 - CVE-2024-52601 - Secure Direct Object Reference + prevent Mass Data Leak
-
N°7776 - CVE-2025-24021 - Prevent mass assignement of fields not present in form
-
N°7810 - CVE-2025-24022 - Prevent Portal code injection
2.7.11
-
N°7533 - Warning at setup if installed on Galera clusters
-
N°4164 - SAML - Hide logoff from portal
-
N°4314 - Fix Uniqueness rules not working with Silo
-
N°5775 - Allow configuration of OAuth client on MS Azure with single tenant
-
N°6968 - Improve audit performance
-
N°6993 - Fix bulk transition on object containing a blob
-
N°7075 - Add check for Content Security Policies (CSP) in the setup
-
N°7085 - Fix infinite loop in login page until fatal error occurs
-
N°7122 - Portal: Hide log off button when user can't actually log off (eg. SSO using SAML or other providers)
-
N°7127 - Upgrade handlebars.js to v4.7.8
-
N°7137 - DataSynchro: Remove “Organization” as default value for SynchroReplica→dest_class
-
N°7245 - Bettor logs on RunTimeEnvironment::CallInstallerHandlers exceptions
-
N°7255 - Fix misc. stylesheets not working in portal since N°7047
-
N°7302 - Fix wrong unit name in \SetupUtils::HumanReadableSize
-
N°7343 - Better error message when compiling a PHP invalid dict file during setup
-
N°7344 - rest.php : better message when cannot execute OQL query
-
N°7448 - Forbid user enumeration through Rest API
-
N°7449 - CVE-2024-32870 - itop hub connector Information disclosure
-
N°7455 - Fix SSRF through arbitrary PHP class instantiation
-
N°7545 - Fix Self XSS in portal picture upload by following owasp recommendations
-
N°7548 - Fix Stored Self XSS in preferences
-
N°7375 - CVE-2024-31998 - Fix XSS and CSRF combined security issue on CSV import
-
N°7364 - Full path disclosure when graphviz is not installed
-
N°7730 - Fix XSS leading to CSRF breach on _table_id parameter
2.7.10
-
N°7062 - Add unit test to ensure that setup SCSS is compiled correctly
-
N°7056 - Limit unnecessary unsafe-inline content in content-security-policy http header
-
N°7042 - Fix check to write error when setting a ext. key programmatically on the end-users portal
-
N°7023 - Fix check to write error when adding an item on a n:n relation (eg. contact) on a new object (eg. user request) on the end-users portal
-
N°7005 - Fix portal stylesheets not being re-compiled when outdated
-
N°6989 - CVE-2023-48710 Limit pages/exec.php script to PHP files
-
N°6951 - CVE-2023-48709 Fix CSV injection in Excel from an iTop CSV export file
-
N°6889 - Cannot backup on localhost with MariaDB >= 10.6.1 since iTop 2.7.9 as iTop is now forcing tcp connection instead of socket
-
N°6887 - Fix excessive OQL requests to display user's grant matrix
-
N°6886 - Add OAuth tests folder to removable directories list
-
N°6791 - Remove setup/install directory from iTop package
-
N°6777 - Fix XSS vulnerability in dashboard title
-
N°6754 - PHP unit tests: Add local PHPUnit XML files to .gitignore
-
N°6738 - UI:RunQuery:Error uses inconsistencies with Dict::Format
-
N°6606 - CVE-2023-44396 XSS vulnerabilities in dashlet ajax operations
-
N°6600 - Portal attachment download : whole SQL query displayed on non existing attachment id error
-
N°6560 - CVE-2023-43790 XSS in friendlyname in object details
-
N°6458 - CVE-2023-45808 Prevent objects creation in non allowed org by forging http query in both Console and Portal
-
N°6097 - Enable PHP unit tests on a custom DataModel
-
N°5621 - Add not managed JS dependencies to NPM to get updates on vulnerabilities
-
N°5491 - Fix UI crash due to missing placeholders in dictionaries entries
-
N°5136 - Fix “Select All objects” adding obsolete objects even if “show obsolete data” param. not activated
-
N°4368 - Send X-Content-Type-Options in HTTP headers
-
N°3715 - Fix export above 1000 entries with obsolete data
-
N°2909 - Fix search on Enum, Date, TagSet,… with index
-
N°938 - Improve print of portal object page and portal dashboard page
2.7.9
New behaviors
-
N°541 - Dashlets: Improve readability when to much labels (pie chart) or too long labels (bar chart)
-
N°6039 - OAuth: Adapt internal mechanism to support Microsoft Graph instead of Azure AD Graph
-
N°6019 - Increase PHP min version to 7.1.3 to enable dependencies update
-
N°6247 - Add accessibility meta data for title on “Actions” and “Toolkit” menus
-
N°6217 - Add accessibility meta data for title on “Power menu”
-
N°6436 - Integrate Performance Audit pre requisite in iTop Pro 2.7.9
-
N°5893 - Implement error handling on triggers part I (minor version branches)
Bug fixes
-
N°6098 - updateLicenses.php : check requirements before launch
-
N°4698 - setup/phpinfo.php : handle iTop not yet installed
-
N°6427 - PHPMail can misfunction in function of SMTP software used
-
N°6340 - Fix permission refused when sending an email and renewing Auth token in synchronous mode
-
N°6173 - \HTMLSanitizer::Sanitize : Fix handling only svg_sanitizer
-
N°6123 - Warnings when launching a backup on MariaDB > v10.6.1 with localhost
-
N°6112 - Dashboard: Improve robustness by trimming dashlet ID returned by server
-
N°5797 - Use LoadConfig method in all Email children classes
-
N°5865 - DoCheckToWrite does not have the same behaviour in the console and the portal
-
N°5729 - Fix disabled button in bulk update/transition when picking a value in a drop-down list
-
N°5765 - Setup: Never cache folder permissions test response
Security
-
N°6548 - Hide DBHost and DBUser in log
-
N°6396 - CVE-2023-34443 CSRF vulnerability in the run_query.php page
-
N°6359 - Cross-site Scripting (XSS) - DOM XSS in activity panel
-
N°6358 - CSRF (Cross Site Request Forgery) on API Rest
-
N°6351 - CVE-2023-34444 XSS vulnerability on pages/ajax.searchform.php
-
N°6350 - CVE-2023-34445 XSS vulnerability on pages/ajax.render.php
-
N°6238 - guzzlehttp/psr7 vulnerability
-
N°6017 - CVE-2021-46743: Firebase PHP-JWT key/algorithm type confusion
2.7.8
Product specific
Mail To Ticket Automation
-
N°544 - Fix Kerberos error message when reading mails
-
N°5216 - Fix invalid message-id when sending notification using cron on system with a specific locale set
-
N°5310 - Add compatibility with iTop 3.1
-
N°5416 - Add compatibility with PHP 8.0
-
N°5624 - Fix “CMDB Change cleaner” module displayed during setup
-
N°5633 - Fix Mail to Ticket crash when cannot decode message on IMAP + OAuth
-
N°5654 - Implement `use_message_id_as_uid` option on IMAP + OAuth
iTop standard
New behaviors
-
N°5758 - Change setup test for GDPR consent
-
N°5523 - Setup wizard : use the ITOP_APPLICATION constant instead of hardcoded “iTop” string
-
N°5235 - Setup : check temp dir permissions
-
N°5553 - OAuth authentication : Hide Client Secret
-
N°5430/N°5333 - OAuth authentication : add capability to customize redirect landing URL
-
N°5414 - Improve debug log for invalid notification placeholders
-
N°5155 - Allow to send email by SMTP with self-signed certificate
-
N°5685 - Upgrade apereo/phpcas lib to fix vulnerability
Bug fixes
-
N°5431 - OAuth authentication : fix dict key missing in redirect page
-
N°5611 - OAuth authentication : Fix missing composer files
-
N°5216 - Fix Error “Invalid ID given” when sending ActionEmail using cron on a system with french locale
-
N°4947 - Fix Email always picking “production” env config file
-
N°5356 - Fix “fieldForm is null” JS error when modifying Server.location
-
N°2244 - Fix image attributes not being visible in PDF exports
-
N°5724 - CVE-2022-31403 : XSS vulnerability via /itop/pages/ajax.render.php
Security
-
N°5741 - Portal security improvement
-
N°5725 - Portal security improvement
-
N°4449 - Export security fix
2.7.7
Product specific
-
N°3169 - Add feature to connect Gsuite mail box with OAuth
-
N°2504 - Add feature to connect Office mail box with OAuth2 for Microsoft Graph
-
N°4589 - Get accessed URL by using integrated tool
-
N°5043 - Improve Mail To Ticket background process logs
iTop standard
New behaviors
-
N°5102 - Allow to send emails (eg. notifications) using GSuite SMTP and Office365 SMTP with OAuth2
-
N°5129 - Disable buttons in transition form while loading AttributeExternalFields
-
N°4479 - Impact analysis : Display and apply filter before display impact analysis graphical
-
N°5114 - Increase file access protection in iTop packages
-
N°5037 - Setup: Request user agreement at installation for personal data collection.
-
N°5035 - Setup: Remove tracking image at the end of the setup
-
N°5090 - Setup: Improve missing dependencies message
-
N°4666 - Core update now install new mandatory modules (specified in install.xml)
-
N°4642 - Core Update : limit the usage of this function to minor version upgrade
-
N°5109 - PHP min version jumped from 5.6 to 7.0.8 for iTop 2.7.7
Bug fixes
-
N°4530 - Fix regression with multi-classes OQL, working for admin only.
-
N°4284 - Fix regression: Object modification: Attribute value lost if not allowed to be seen
-
N°4057 - Fix regression: Custom Translation for Custom Tab is not inherited by instanciable Classes
-
N°4898 - Reflected XSS on enums modification
-
N°4867 - Fix “Twig content not allowed” error with “extkey search icon” in user portal
-
N°5215 - Portal security improvement
-
N°5211 - Application upgrade install new modules in datamodel/2.x
-
N°5168 - Portal security hardening for self profil modification
-
N°5002 - Fix memory leak after object creation in popup
-
N°4998 - Fix display of AttributeDuration in transition forms
-
N°4976 - Add CSRF token in the csv import page
-
N°4920 - Fix “undefined index” notice in user rights
-
N°4900 - Sanitize dashlets to prevent XSS injection
-
N°4899 - Reflected XSS on revert_dashboard operation
-
N°4872 - Fix ticket creation in resolved status, loosing its Inline images
-
N°4558 - Remove PHP notice in \CMDBSource::StartTransaction
-
N°4538 - Fix display on dashlet Groupby an ExternalKey with special character
-
N°4488 - Remove cmdbAbstractObject::GetSetAsHTMLSpreadsheet() from usable API methods
-
N°4714 - New ITOP_CORE_VERSION constant
2.7.6
Product specific
-
N°1719: ITSM Designer connector : add global check for parameters
-
N°4163: Fix: “undefined index: display_condition” notice when displaying UserRequest after upgrading this extension to v2.2.0
-
N°3941: Remove gregwar/captcha demo files
-
Spanish and German translation
iTop standard
-
N°4486: Fix DataSynchro replica errors due to CMDBChange not found
-
N°4213: EnumSet can be displayed in read mode in user portal
-
N°2510: Fix expand Log entry in list view in console
-
N°4463: Enable trigger even on objects that the user cannot see
-
N°3635: Update spanish translations thanks to Miguel Turrubiates
Robustness
-
N°4399: Fix memory error on setup when lots of attachments in DB
-
N°4335: Fix export crashing on PHP < 7.0
-
N°4298: Fix .maintenance file isn't removed anymore by setup
-
N°4286: Can download again backup at the end of the setup
Supportability
-
N°4162: Portal exception page : restore exception message
-
N°4202: Setup memory_limit check : clearer message
-
N°4126: Improve `max_allowed_packet` checks messages
-
N°4125: When apcu cache does not return what is expected, an error is added to the error_log in a dedicated channel. The cache is not emptied, the error is user visible on purpose as the administrator must fix the wrong APCU version.
Security
-
N°4231: CVE-2021-32610 Update pear/archive_tar lib to 1.4.14
-
N°4289: CVE-2021-41245 : CSRF tokens aren't locked to one session
-
N°4304: Can browse all of the server InlineImage
-
N°4356: Portal : attachment downloads are opened in the browser
-
N°4359: Dashboard export : can load multiple files and URL
-
N°4360: XSS by uploading malicious SVG file as user portal profile picture
-
N°4363: RCSS in ajax.render.php?operation=save_dashboard
-
N°4365: RCSS in the dashboard editor
-
N°4367: RCSS in /pages/ajax.render.php?operation=objectSearchForm
-
N°4384: CVE-2022-24780 - “Twig content not allowed” error when use the extkey widget search icon in the user portal
-
N°4414: Security issue with Database Error
-
N°4478: Update dataTables lib. to 1.11.3 in iTop 2.7
-
N°4491: XSS in “Header with statistics” dashlet
-
N°4492: XSS in Advanced search locked criteria
-
N°4493: XSS in tagset spreadsheet export
-
N°4495: XSS in Advanced search external key criteria
-
N°4499: XSS in export-v2 on OQL error
-
N°4501: XSS in attachment list on uploader name
2.7.5
Product specific
-
Mail to Ticket Automation
-
Enable moving emails to another folder after processing with IMAP protocol
-
Add a retention period on mail replicas, to avoid Ticket duplication on connection lost
-
-
Customized Request Form: conditional template field displayed based on another field value
-
User Action Configurator: fix duplication of last public log entry when cloning caselogs
-
Fix UserRequest TTO/TTR wrong translations introduced in 2.7.2
-
Brute Force Protection can be disabled with a module parameter
-
Avoid calling Recaptcha Google API when Recaptcha isn't enabled
-
Fix the display of Survey with a lot of data and css issue
-
Align MTP log level to setup log level
-
2.7.5-2 : Fix Fatal Error when the UserRequest:RequestsDispatchedToMyTeams menu is removed
iTop standard
-
2.7.5-2 : Fix setup wizard when DB connection is using TLS
-
2.7.5-1 : Community release. Fix Empty Managed Brick generating an Oups!.
Only 2.7.5-1 was published to the Community
Robustness
-
Increase nb of supported UNION in OQL query from ~40 to more than 450
-
Add ability to skip the rebuild of hierarchical key during setup
-
An echo command present in the code, has been removed.
-
Loader is now displayed immediately before building the items for the tree/mosaic modes, to ensure it is displayed.
-
Fix mutex being silently released after connection timeout, it's no more released.
-
During setup, separate “modify fields” and “create index” in db request.
-
Add \utils::SetMinMemoryLimit
-
Portal database transaction removed.
-
Portal: fix the Notice “Undefined index: max_display_limit” (bug introduced in 2.7.1)
Supportability
-
Specific traces added (option) on cmdbsource log channel. UserId added in the error.log file.
-
New error messages added in case of failure of object creation or update“
-
Add test if ajax call is canceled
-
Portal : fix modification of field in order to hide another one
-
Better formatting of the details and reports (1 line requests)
-
Add new logs for object lists in portal (debug level, 'portal' channel)
-
List order : add a log when data are invalid
Security
-
CVE-2021-32664 - Reflected XSS with Administrator credentials]]
-
Update pear/archive_tar lib to 1.4.13
-
The file index.php is now protected with a token that prevent accessing the setup in an uncontrolled way.
-
Mask the Password database in the setup process
-
Prevent the mysql password to appear on misconfigured servers
2.7.4
Product specific
-
Fix upgrade issue with request template field values using a multi-bytes caracter on the 255th position (Customized Request Form)
-
Fix approvers not being able to download attachments, on Requests they had to approve in Portal (Approval Process Automation)
-
Add missing translations on
cron
tab of the System information menu (Log Management) -
Fix 2.7.2 regression impacting users of Mail To Ticket Automation version 2.3.0, keeping mails in the mailbox after iTop processing (Mail To Ticket Automation)
-
2.7.4-2 Portal: Loader icon is displayed in tree/mosaic modes, visible with large amount of data (fixed in 2.7.3-2)
-
2.7.4-1 Portal: fix the Notice “Undefined index: max_display_limit” (fixed in 2.7.3-1)
Reverse Proxy
-
Products only: explicit message in case of misconfigured proxies for ITSM Designer connection.
-
Fix improper redirection to the homepage when iTop is behind a reverse proxy:
-
Check the reverse proxy recommended settings for iTop compatibility
-
Set the new configuration parameter 'behind_reverse_proxy' ⇒ 'true' if you have reverse proxies.
-
-
app_root_url: now handle reverse proxies during the setup and preserve existing configuration during an upgrade,
Setup & performance
-
Setup: Prevent usage of “Application upgrade” if a file integrity problem is detected
-
Setup: support for 'auto_select' and extension.xml has been fixed,
-
Setup performance: clean orphan CMDBChange records limited to 100K,
-
Setup performance: orphan attachments deletion is limited to 30s max,
-
Garbage collection of used transaction id, done less often (new config parameter: transactions_gc_threshold)
Misc
-
Restore Portal headers labels on CSV export (regression introduced in 2.7.2)
-
Support parenthesis in enumeration codes,
-
OQL: Fix join on another class than the corresponding external key target,
-
OQL: Fix count on union with conditions on multi-column attributes,
-
Customization: Fix HTML displayed in Login window
-
Dictionary: missing translation when initial_state_path is used
-
Dictionary: missing translation for background tasks status and errors on asynchronous tasks
Security
-
Security: fix validation of CSRF token in the portal
-
Security: fix command injection vulnerability in the Setup Wizard
-
Security: Fixed a bug preventing deletion of used token on windows servers,
-
Security on “group by” dashlets : access right is controlled and password attributes are not usable
2.7.3
Product specific
-
Fix crash when loggin with a admin user in admin only mode (Brute Force Protection)
-
Restore REST
comment
field used as author of the history change (Brute Force Protection) -
Restore support of text longer than 255 car in template field value (Customized Request Form)
-
Restore display of bypassing user in the
Approval status
tab (Approval Process Automation)
-
2.7.3-2 Portal: Loader icon is displayed in tree/mosaic modes, visible with large amount of data
-
2.7.3-1 Portal: fix the Notice “Undefined index: max_display_limit” (bug introduced in 2.7.1)
Regressions fixes
-
Restore support of
:current_contact→code
in OQL queries (bug introduced in 2.7.2) -
Restore preview of Document file (bug introduced in 2.7.2)
-
Restore UI behavior: first tab is selected when mandatory field is missing (bug introduced in 2.7.0)
-
Fix setup with Chrome v87 (bug generated by a Chrome upgrade)
-
Fix modal created without an ID in the Portal (bug introduced in 2.7.0)
2.7.2
Product specific
-
Menu “System information”: new
cron
tab with Background Tasks information. -
DB Tools: New CLI command env-production/combodo-db-tools/bin/report.php for offline report. The latest report generated is accessible using the menu “Log management” even in case of connection timeout.
-
Brute Force Protection do not write anymore into the database when iTop is read-only.
-
Approval - approval URL for iTop users direct them again to iTop Portal instead of non-authenticated page
-
Mail to ticket automation: Fix
PHP Notice: Undefined variable: index
in logs
-
2.7.2-1 Fix 2.7.2 regression: console exports failing with “missing token” error.
New behaviors
-
Enable CSV import of iTop Users by non admin users (as long as they are allowed by Admin Tools Delegation)
-
Background task: fix issue with tasks not always executed (Notify on Expiration for eg.)
-
Add Trigger information to the error log when an Action fails
-
Fix creation of objects containing AttributeImage on PHP 7.4 with warnings activated
-
Avoid PHP notices on DBObject core code, during transitions
-
PHP notice has been removed when creating a new FULLTEXT index in the database (TagSet attribute)
-
Removed default admin phone number which was invalid for mysql in strict mode
-
Changing Color of Brick Search on Portail with extension Custom is now easier
-
Fix alias problem in portal scopes. Warning: If you have duplicate
itop-portal-base
, BrowseBrickController.php code must be updated, cf commit on Git.
Translations
-
Fixes two typos in German translations
-
Fix spelling typo on iTop welcome page
-
Spelling mistakes fixed
-
Fix use of application constants in Dutch translations
Security fixes
-
Fix session fixation issue - CVE-2020-15220
-
Sanitize breadcrumb entries - CVE-2020-15221
-
Don't display error details (error details remain logged) - CVE-2020-15219
-
HTTP headers have been added - CVE-2020-15218
-
Better control of the transaction_id parameter - CVE-2020-16842
-
Portal user could export more datas than his portal scope (CVE-2020-4079)
-
Hide MySQL Password from error.log in case of MySQL connection error
2.7.x regressions fixes
-
import csv : Fix display, previousely showning confusing html tags
-
Fixed OQL: Fix malformed UNION queries in portal scopes
-
Fix standard Global Search feature which was only searching on last word
-
Fix bug on mass update: blocking message “Please wait while updating fields”
-
Fix regression in notification when using placeholder like
$current_user→attribute_code$
-
Fix internal regexp no more compatible starting from PHP 7.3
-
Restore log KPI calls in Portal
-
Fix notifications on threshold not sent when trigger is created on iTop 2.7.1
-
Portal: fix incompatibility between
ignore_silo=true
and nested query in scopes -
Portal: Multi-word search has been fixed for ManageBrick in lazy mode.
-
Portal Filters is now executed on visible values and not on html code of cells
-
Fix empty tabs being displayed (misuse of the API or user rights)
-
Fix rendering of an ExternalField on a Text with XML content
-
Configure this list : missing sort icon, replaced by fontawesome character
-
Fix backup download: Stop capturing output before sending backup file (avoid memory problem)
-
Fix corrupted backups when a file has a size which is a multiple of 512 bytes
-
Dashlet: fix invalid filter parameter, when using & (ampersand) in the query
-
Fix cron.php creating a new CMDBChange for every BackgroundProcess
-
Login screen support HTML for dictionary entry: 'UI:Login:About'
-
DataModel - LifeCycle visualization: fix open and close buttons no more working
-
Fix wrong count of related objects due to Obsolete & Archived
-
Fix variable evaluation in ListExpression to avoid double parenthesis.
2.7.1
Product specific
-
Approval by contact with user disabled, now receive an approval URL which does not require to log in anymore.
-
Fix Recurring PHP Notice of Brute Force Protection “Undefined index: login_temp_auth_user”
-
Emails coming from outlook. Unwanted line breaks no more added when editing the ticket.
-
fix forward on error not done if exception occurs during mail processing + log error in the mailbox debug log
-
When a coverage window doesn't have any interval, we consider that it's 24/7.
-
Fix 2.7.0 regression, preventing sending new attachments in email replies
New behaviors
-
Portal: Total count on Managed Brick is now accurate even when objects are in multiple tabs.
-
An attribute File can now be emptied by the user.
-
Auto-complete on external key takes into account obsolescence user preference
-
Search on Text containing “_” now possible without being used as a wildcard.
-
End user Wiki explains how to search for ”%“ character using “\%”, otherwise ”%“ matches any string
-
Dashlet Header statistic on ExternalKey, now displays friendlynames and no more ids
-
All Dashlet Title uses now Left alignment.
-
“Configure this list” shows obsolete data only if required by user preferences.
-
Providing an empty file as attachment is no more allowed (it was crashing iTop)
-
Improve user feedback on invalid transition: Silent or simple warning -yellow banner-, rather than error. A double click on a transition, or a browser back and force, no more generates any fatal error.
-
Limit searchable classes in a tree, to those allowed to the user, in a SearchMenuNode
-
Files integrity is controlled in the first screen of “Application upgrade” and a warning is displayed when the install is not conform
-
Align creation and update message on portal to console message
-
Allow to set return-path with \EMail::AddToHeader
Bug fixes
-
Fix “cron” case in labels
-
Fix Export of html fields such as in Notification Actions
-
Portal : autocomplete keep selected value and use 'max_display_limit' instead of 'max_combo_length'.
-
Prevent object form submission while a filter on depending field is under computation (to prevent saving of incoherent object)
-
Fix search on external key, when using the magnifier and a filter in the pop-up
-
Export of EventIssue object is now possible
-
History of AttributeEncryptedString no more interprets HTML tags
-
Fix OQL scopes generating malformed SQL query (corner case with UNION)
-
Add TLs Options on database restore command
-
Add mbstring as optional extension in setup
-
Fix infinite loops when logging with a Contact having a non empty TagSet field
-
Copy characters after a ”<“ character in a Copy operation on a Transition
-
dbClick to exit the “description” field when creating an incident on the portal
-
Fatal errors now log into error.log instead of setup.log
Developper
-
Backoffice theme: Add variable for menu group background color
-
ApplyStimulus: Rollback the object values when an action fails
-
GetAttributeFlag taken into account on form refresh with dependent field
-
Fix: GetTrackOrigin() now returns 'csv-interactive' value during csvimport
-
Fix error in file light-gray.scss
-
Clearer messages when an object update fails
Login
-
Provisioning for hybrid auth fails
-
Fix “Undefined index: login_mode” Notice
-
Added support for REDIRECT_HTTP_AUTHORIZATION in basic authentication.
Security Fixes
-
CVE-2020-12777
-
CVE-2020-12778
-
CVE-2020-12779
-
CVE-2020-12780
-
CVE-2020-12781
Compatibility IE11
-
Third dashlet added in the same dashboard cell under IE was crashing
-
Portal Filter Brick input was ignored under IE11
-
Applying a transition no more ends with blank page under IE
Fix regressions
-
Portal can again display more 10 attachments
-
OQL syntax error displayed in place of the widget (no more fatal error)
-
Fix syntax error with PHP 5.6 and TCPDF 6.3.4
-
Fix missing fulltext index for all AttributeSet on table creation (i.e. install from scratch) and update (migration).
-
Fix setup crash when having enum with values containing parenthesis
-
Fix filtering of unions with parent class
-
Fix backup not executed anymore
-
The AttributeDefinition::IsSearchable() method has been fixed to check complex attributes like External Fields.
-
Fix unsaved dashlet added on a dashboard
-
Fix alias renaming when already exists in one OQL of an UNION
-
“Printer Friendly Version” screen: Tabs now display labels instead of codes
-
Fix deletion of a single replica within a list
2.7.0
Product specific
-
Approval : from and reply_to are no set per action, and prefilled by the corresponding module parameters
-
Fix calendar view not working if scope containing a “:this→xxx” returned no result
-
Add german dictionnary for Customer Survey
-
Enable OQL query on Request Templates values
-
Request Template: add Field history, menus displayed even with a single organization, French class name
-
Template field generation script now handle correctly deleted request templates
-
DBTools moves from the “Admin tools” to the new “iTop integrity” menu
-
Block MTT and MTP for iTop with ITSM Designer module, when modules are present in /extensions/ directory
-
Check integrity is now skipped on MTT and optional (but checked by default) on MTP
-
Add default search criterion on PrecannedReply, CoverageWindow and CoverageWindowInterval
-
Make EnhancedSLAComputation::GetDeadline and GetOpenDuration more generic
-
2.7.0-2: Fix regressions introduced by 2.7.0:
-
Fix:
RenameAlias: alias 'L-1-1' already used
in one OQL of an UNION -
Fix: Dashlet added on a dashboard are gone when coming back to the dashboard
-
Fix: Provisioning for hybrid auth fails, fixed by changing the Tracked Origin
-
Fix: Can't send attachment added before saving using “Send updates by email”
-
Fix: Global Search doesn't search in external fields
-
Fix: Backup triggered by cron were not executed anymore
-
-
2.7.0-1: Fix regressions introduced by 2.7.0:
-
Fix: iTop not working with MYSQL 5.6
-
Fix: Fix DataModel Viewer not supporting special chars in class name (eg. ”)
-
New behaviors
-
During Setup, Move to production, Hub installation… iTop is set in ACCESS_READONLY
-
After Setup, the configuration parameter access_mode is set to ACCESS_FULL
-
Debug OQL for search is accessible directly for the administrators
-
Replaced first name by last name in default person list view
-
Don't display organization name in menu bar if it's the only one
-
Prevent trigger creation without friendlyname
-
Add applicable contexts on Trigger
-
Track field Comment in core/delete - API REST
Authentication & security
-
Authentication extensibility: Allow login, logoff screens customization through an extension
-
Security extensibility: Add hooks for iTop login security hardening
-
Security extensibility: New fields on UserLocal for an extension to handle password expiration
-
Security: Add a user password complexity constrains on new users and password change
-
Security: Every OQL selected classes are checked against allowed organizations.
-
Security: Fix issue with user creation by a non administrator
-
Security: Prevent search to retrieve users belonging to not allowed Org
-
Security: Global search now ignore fields of type “AttributePassword”
-
Security: Prevent Password Autocomplete in Browser. But most browsers ignore this tag.
-
Security: Restrict access to assets into env-*, extensions and datamodels
-
Security: config.php access rights have been forced to 0440 in creation instead of 0444.
-
Security: Fix CVE-2019-19821
-
Password policy: change password page: add feedback during the password typing
-
Password policy: Enable password expiry
Look & Feel
-
Markup extensibility: Add meta informations and hooks
-
Markup extensibility: Introduce custom themes for iTop's console
-
Markup extensibility: Add markup hooks on BrowseBrick and ManageBrick tables
-
Markup extensibility: Add support for both code AND title in admin. console tabs
-
Markup extensibility: Add password attributes to exclude list in metadata
-
Markup extensibility: Rework some SCSS variables
-
Markup extensibility: Add one additional theme for the backoffice, for test instances
-
Change breadcrumb icons color to black instead of Combodo's orange
-
Fix style for input's feedback on “change password” page
-
Login page : add autofocus attribute to the id field
-
Attachments: Update MS Office and OpenOffice file icons with more modern versions
OQL & ORM
-
OQL: Supports nested queries such as: SELECT Team WHERE id NOT IN (SELECT…)
-
OQL: Supports: ISNULL(NULL) OR (`ServiceSubcategory`.`request_type` = NULL)
-
OQL: Enhance performance of Count() by ignoring external keys
-
OQL: Improve OQL performance
-
OQL: Optimize generation of SQL from OQL, removing useless JOIN.
-
OQL: Spread the finalclass column on all the DB tables except finalclass table it-self. Migration done automatically at Setup.
-
OQL: Transactions added to fix deadlock during concurrent access and guarantee Database integrity
-
OQL: Transactions used for creation of object with class hierarchy, as it generate entries in multiple tables.
-
OQL: Export DBSearch to JSON (for a future OQL graphical editor)
-
ORM: Allow to force a WebPageMenu to open its url in a new window
-
ORM: Access to object modifications in \iApplicationObjectExtension::OnDBUpdate and in \DBObject::AfterUpdate
-
ORM: Delegate definition of the ticket reference format to each sub-classes
-
ORM: Change visibility of \DBObject::GetReferencingObjects internal method from public to protected
-
Allow params “limit” and “page” in REST-API (Dennis Lassiter)
-
Updated wiki for \DBBackup::CreateZip removal
Portal
-
Portal: Show confirmation dialog when closing forms with unsaved data
-
Portal: Add an icon to copy object name and url next to the form title
-
Portal: Add support for abstract classes creation in browse brick
-
Portal: Add support for columns sorting in ManageBrick's “lazy” mode
-
Portal: Hide silently sub-bricks not allowed to the user, when displaying an Aggregate Brick .
-
Portal: External keys in form allow to open the associated object if user scopes allows it.
-
Portal: Introduce navigation rules in Portal, to specify where to go on closing a form
-
Portal: action_rules query without filter will now throw an exception
-
Portal: Add option to display ManageBrick's current tab description as the brick subtitle.
-
Portal: Every brick can display a subtitle if they populate the sBrickSubtitle variable in the template.
-
Portal: Add option to show/hide linkedsets out of user's scopes in portal
-
Portal: Add parameter to set default list length in ManageBrick and BrowseBrick
-
Portal: Allow n:n links for Browse Brick's levels
-
Portal: Browse brick actions are now ordered following a rank tag
-
Portal: Filter linkedsets on remote object scopes
-
Portal: Form submission do NOT include hidden fields anymore, unless they have a dependency to an editable field.
-
Portal: Enable use of a dedicated end-users portal without having to install the standard portal
-
Portal: Make portal denial based on user profiles work again
-
Portal: Manage and Browse brick filters apply on subclasses fields in lazy mode
-
Portal: Migrate end-users portal framework from Silex to Symfony 3.4 🚀 .
-
Portal: Fix filter on external key when coming from filter brick
-
Portal: Increase navigation rules checks robustness
-
Portal: Display attachments count in section title, updated on each add/delete
-
Portal: Fix origin modal not closing when switching to editing of an object
-
Portal: Better display of success messages on form validation
-
Portal: Support for AttributeEnumSet
-
Improve modal backdrop UX
-
Introduce “CombodoPortalToolbox”, helpers to ease JS manipulations especially through the iPopupMenuExtension
-
Increase blur effect on portal modal backdrop
-
Warning: Remove legacy end-user portal
-
Warning: All your portal extensions needs to be migrated, see migration notes
Setup & system
-
Setup: New feature to allow micro versions update, as long as the module list does not change.
-
Setup: New file .maintenance in data directory to prevent iTop or cron to interfer with an application upgrade
-
Setup: hide table prefix option by default.
-
Setup: php-gd is now mandatory on setup
-
Setup: Remove useless alter table queries generated by setup & Toolkit on MariaDB >= 10.2
-
Setup: Add real autoloader for framework files in /core and /application
-
Setup: iTop classes are now loaded with an autoloader
-
Supportability: Maintenance mode (Better setup, CRON, REST and export message)
-
Backup: archive creation errors are now displayed
-
Backup during Setup are stored in data/backups/manual/setup-YYYY-MM-DD-HH-mm.tar.gz (thanks to Hipska - PR #61)
-
System: Change cron.cmd to use arguments instead of fixed paths
-
System: Generic method to check path validity
-
System: New log level “debug” and logs filterable
-
System: PHP dependencies managed by a composer.json
User interface
-
UI: Reorganize admin console menus
-
UI: Attachments are displayed as table with their meta data
-
UI: Add code snippets with syntax highlighting to CaseLog/HTML fields
-
UI: Autocomplete: Harmonize accents handling for better robustness
-
UI: New DroidSansFallback font and 'export_pdf_font' config param for PDF export
-
UI: Trigger description is now required because it is used as friendlyname
-
UI: Center tag is back in default sanitizer white list
Code upgrade
-
Upgrade Archive_Tar lib from 1.4.4 custom to 1.4.7
-
Upgrade bootstrap to v3.4.1
-
Upgrade CKEditor to v4.11.4
-
Upgrade Font Awesome from v4 to v5.12.0
-
Upgrade jQuery to v3.4.1
-
Upgrade ScssPHP to v1.0.6
-
Upgrade SwiftMailer to v5.4.12
-
Upgrade ArchiveTar to v1.4.9
Misc
-
Update cron.cmd to have better defaults and remove references to old php version
-
Make setup backup location and name similar as other backups (Thomas Casteleyn)
-
Add status.php for getting iTop's status (Guy Couronné)
-
Add support to optionally mention username in password reset mail (Thomas Casteleyn)
-
Make ticket reference generation working with new sub-classes
-
Add KPI on API Rest (Guy Couronné)
-
Only set Ticket ref if not yet present via import or synchro (Thomas Casteleyn)
-
Move expression cache files in a dedicated directory
-
Add bootstrap.inc.php
-
Handle nested transactions
-
apc_clear_cache & opcache_reset are both called when resetting the cache
-
Integrate
database integrity
module
Translations
-
NL Dictionaries and messages (Thomas Casteleyn)
-
CN @purplegrape
-
SK Martin Kincel
-
Chinese translations
-
Spanish translations
Bug fixes
-
UI: Fix blank page when displaying a synchronized object. Simple quote not escaped before giving content to qTip lib.
-
UI: Fix dashlet edition due to duplicate ids of dashlets, by renumbering them when building in iTop pages.
-
UI: Fix 'G', 'd', 'j' DateTime format in regexp generation
-
UI: Fix GroupBy dashlet on classes with ExternalField to ExternalField
-
UI: Fix missing scroll bar in DataModel Viewer for class with large number of attributs
-
UI: Fix missing scroll bar missing in modal window “Create a new field” from Request Template
-
UI: Fix non editable dashboard when wrong attribute code used in its definition
-
UI: Fix regression on mandatory external field with only 1 possible value
-
UI: Fix regression when creating ticket in “resolved” with lnk objects
-
UI: Fix search equals 0 for integer
-
UI: Fix truncated caselog entry with large HTML table or word
-
Portal: Fix column sorting on date attributes (eg. french format)
-
Portal: Fix crash in object form having empty AttributeBlob field
-
Portal: Fix crash when having comments in some parts of the XML
-
Portal: Fix error on form submit “Attempting to set the value on the read-only attribute”
-
Portal: Fix hyperlink placeholder not working in notifications for other portals
-
Portal: Fix list tabs and on charts click when a Manage brick has a chart as default display mode
-
Portal: Fix missing scrollbar in tall form modals
-
Portal: Fix wrong “apply stimulus” form being used in a branch of classes
-
Portal: Correctly display external fields targeting an enum field
-
Setup: Fix MySQL8 incompatibilities in setup and backup
-
Setup: Fix setup crash when class has an empty zlist tag
-
Setup: fix typo in warning due to non-matching products.
-
Setup: Fix graphiz detection feedback message on Windows systems
-
Setup: Fix extremely slow page load for first user after setup
-
Setup: Fix MySQL TLS wiki URL
-
ORM: Fix “invalid numeric value” when inserting/updating AttributeDecimal
-
REST/JSON fix must_exists flag for remote object of indirect linkedset
-
Fix support of expressions (friendlyname) in different language contexts
-
Fix apc-emulation
-
Fix datepicker locale not set correctly for ZH CN and PT BR (@annProg)
-
Fix cron crash when MySQL connection lost (Thomas Casteleyn)
-
Fix images being too large in icon selector (dashboards and Designer)
-
Fix ticket ref uniqueness rule declaration (@jbostoen)
-
Fix count with Archive mode
-
Fix compiler crashing on setup due to comment in XML
-
Support Microsoft Outlook encoding of non breaking line in UTF-8
-
Fix DBSearch::Intersect (de-duplicate aliases)
-
Fix error when no cache is configured
-
Add more logs
-
Fix run_query error handling incompatible with PHP < 7.3.0
-
Fix some more PHP 7.4 incompatibilities
-
Fix AdminTools DataSynchro creation
-
Fix apply stimulus returning true when stimuli is not applicable
-
Fix ticket ref sometimes being a duplicate
Misc
-
Filterable logs using log_level_min optionally per channels
-
Improve unit tests
-
Security hardening
-
Change AttributeImage methods visibility to allow overrides
-
Setup wizard backup path : larger input widget
-
Many small UI improvements
-
autoload rework for application and core directories
-
Export a DBSearch as an array/JSON structure
-
Abstract implementation for iScheduledProcess
-
Add Alexandre, Anne-Catherine, Olivier, Marie-Annette and Dimitri to the sample data to welcome them! 👋
Deprecations
-
Remove Config deprecated
GetDB…()
methods -
Deprecated stopwatch extensivity
-
Deprecated DBObject::DB*Tracked methods (DBInsertTracked, DBInsertTrackedNoReload, DBUpdateTracked, DBDeleteTracked)
-
Removed \DBObject::RegisterCallback
-
Removed DB Config getters and charset/collation config params
-
Removed DBBackup::CreateZip
-
ORM: Deprecate \MetaModel::EnumLinksClasses and \MetaModel::EnumLinkingClasses
-
ORM: Deprecate all Config::GetDB* methods, that need to be replaced by Config::Get() calls
-
ORM: MetaModel::GetNextKey($sClass) is now deprecated in favor of ItopCounter::IncClass($sClass)
-
FontAwesome: FontAwesome v4 is deprecated, use FontAwesome v5 CSS classes instead
3_2_0/products/professional/release/change_log.txt ·
Last modified: 2025/02/06 12:18 by 127.0.0.1