Lime CRM Desktop Client 11.1.2252

Product
Lime CRM Desktop Client
Version
11.1.2252
Date published
2022-03-03
Platform
Windows
Availability
Manual installation and Automatic Updates.
  • Fixed compatibility problem with XmlHttpRequest where the handling for mixed-content resulted in slightly different semantics for specific callbacks primarily seen as race-conditions with unexpected values for readyState.
  • Fixed bug where specific Lime-windows became unresponsive after closing VBA Forms. Root cause: Missing propagation of WM_ENABLE in one call path which resulted in race-conditions when modal dialogs are closed.
  • Fixed problems with automatic upgrade where the downloaded binary was deleted due to unexpected backend response. Note: Fix will improve stability when upgrading from this version.
  • Worked around problems with conflicting filenames if drag-n-drop include multiple items with identical name but different content.
  • Refactored rendering and layout to workaround rendering bug in WebView2 where primary symptoms was extreme latency for any inter apartment communication using COM marshaling due to infinite flood of WM_PAINT messages.
  • Restored compatibility: Mark and activate new item in parent explorer after save and close.
  • Restored compatibility: Exclude timepart if not set for dates in LDC queries.
  • Support custom timeout for Filter.HitCountAsync to better handle crazy slow backend queries using addon_infotiles 4.9.5 or later. Primary recommendation is to fix underlying problem in backend, anything over 500 ms will have serious user impact in legacy InfoTiles.
  • Updated to Sentry 0.4.15 to resolve performance issues.
  • Fixed problem with lingering Excel-processes after failed integration. If COM-API fails the process will now be explicitly killed after reasonable grace period to avoid warnings about read-only mode or document restore.
  • Fixed compatibility problem in document handling seen for table templates where removing files may result in corrupted documents.
  • Restored compatibility: Use legacy modified check in VBA eventhandlers (ie. Controls_AfterSave) for Controls.Modified to support legacy code that assume modified flags to persist after saving.
  • Fixed bug in communication layer where failed requests may result in two more attempts than specified max, which is particularly bad if specified max was one single attempt. Note: This may reduce problems with deadlocks for heavily loaded environments where communication level timeout may result in unexpected reties for expensive operations.
  • Restored compatibility: Infotile queries that include reference to trashcan should now work. Note: Trashcan is not its own table in backend which has implications related to alias handling and performance. Bug was introduced when LDC query was modified to benefit from existing backend optimizations. General recommendation is to avoid any joins (ie. filters and related fields) that involve trashcan since that may result in huge performance loss and unexpected results.
  • Restored compatibility: Ensure controls for fields marked as limereadonly are treated as editable and locally modified internally when updated via API. User appearance is still read-only, ie. visible but disabled. Problems was mostly seen in combination with addons that relies heavy on various Refresh-methods (ie. dynamic checklist)
  • Resolved compatibility problem for Record.CreatedBy when new record is created without backend. Previous versions had a bug that forces backend creation, which had side-effects which some VBA depend on. This resolves many issues related to adding new documents and history notes in old VBA-rich solutions.
  • Resolved compatibility problem for Filter.Add. Previous versions allows any COM-variant to be added to the filter due to a bug in the argument validation. Some legacy VBA use the Filter-object as a generic collection. This feature is now restored by essentially removing argument validation.
  • Updated default update channel to enable progressive roll-out for next release
    • For Cloud (ie. *.lime-crm.com): Stable
    • For on-prem: Mature
  • Fixed bug in Record.Copy, Record.CopyTo, Records.Copy and Records.CopyTo that caused owner record not to update properly. This resolves problems with VBA copying (template) records between lists.
  • Fixed bug in asynchronous update for documents, the internal handling is now more robust for situations where the file-id is not available when copying documents. This resolves bugs where batch adding documents failed to include the actual file contents when using the modern File-API.
  • Improved robustness for hit counting, this should reduce problems with dimmed tabs after adding first record.
  • Improved robustness for (VBA) eventhandlers for Inspector.AfterSave that call Inspector.Save, which will trigger Inspector.AfterSave again.
  • Improved robustness for accessing User-object (ie. Record.CreatedBy, Record.UpdatedBy, Record.User) in situations where the actual user have been removed from Lime CRM. The API will now return a dummy object to avoid problems with NULL/Nothing.
  • Improved robustness for backend modification of saved values during update, ie. situations where desktop saves fields and that in turn triggers updates for other fields or does not even update the saved fields.
  • Fixed alias problem with multiple join-paths. Should resolve some problems with “element not found”.
  • Fixed occasional problem where installation does not upgrade all DLLs. The root cause relate to missing version information for the modules. It is very unclear under what situations modules are not properly upgraded, but ZIPed installation folders from customers clearly show this is the case.
  • Worked around race-conditions in WebView2 during initial load that caused ActionPad to use “about:blank” instead of intended LBS-based content.
  • Fixed problems with recommendedDesktopVersion referring to new build that made publicly available.
  • Fixed problems with “Ambiguous column name” for complex filters and views. Root cause is missing table specifications for descriptive expressions. For compatibility desktop will now share join paths between filters and views if identical.
  • Fixed problem with debug show if the same LBS-app is loaded multiple times. Root cause was race-conditions in LBS, previously hidden by different loading timings.
  • Fixed problem with 0 (zero) values instead of NULL for fields with numeric formatting that yield empty string for 0.
  • Improved compatibility for legacy VBA that modify data via Controls.SetValue or Control.Value, but commit changed using Record.Update. Root cause was race-conditions between window messages and COM calls.
  • Fixed problem where ActionPad-folder was not properly updated during initial login. Root cause was compatibility problems between XceedZip and WebView2 running in same STA (COM apartment).
  • Fixed memory leak for VBA when loaded with warnings.
  • Fixed rendering crash seen via Sentry
  • Fixed bug where the inspector is automatically saved when opening inspector via relation field
  • Improved visual indication of empty tabs in inspector
  • Fixed problem with publishing ActionPads due to compatibility problems between XceedZip and WebView2 running in same STA.
  • Last modified: 4 months ago
  • by Pontus Netler