Releases: oroinc/platform-application
Release Notes
List of improvements and fixed bugs:
- Updated packagist repository to secured URL
- Added possibility for creating entity through context property path
- Added polyfills for Math functions
- Added console command to set application url
- Added ability to import Tags from CSV
- Refactored email API Search query
- Fixed deletion of 100k emails
- Fixed performance of User view page
- Fixed button Add Context on the email view page
- Fixed contains operator for search in case PostgreSQL
- Fixed calendar notifications email templates
- Fixed User email templates
- Fixed inline select2 editor opens only one time in Firefox
- Fixed uniqueness of the Grid View name is verified globally
- Fixed Javascript error when trying to edit autoresponse rule for system mailbox
- Fixed checkboxes with short grids
- Restored table row selected color
- Fixed Impossible to add Gmail account to user
- Fixed filter when French locale is used
- Fixed email Invitation doesn't use value from Application URL configuration setting
- Fixed ManyToOne relation from Contact entity to Country…
- Fixed JSON type is supported starting PostgreSQL 9.2
Release Notes
New features – Platform.
Inline editing in grids.
This feature allows you to quickly process large amounts of data by editing record values inline in the grid.
Using the feature is simple: hover the mouse over a grid cell. If it is editable, it will be colored blue and an "edit" icon will appear in its top right corner. Click this icon or double-click the cell itself to get into the Edit mode. In this mode, the cell you're editing will turn into a field or control with two Apply and Discard buttons on its right. Both the row and the column header of a cell you're editing will be highlighted to help you identify the record and the attribute you're editing.
If you press Enter, your edit will be applied and you will move to the next row. If you press Tab, you will move to the next editable cell on the right. Shift+Enter and Shift+Tab move you correspondingly upwards and leftwards.
The input is validated immediately, and if validation fails, the editing control won't move you will see an error message (e.g. "This value is not a valid email address"). If the edit has not been applied for some reason (e.g. insufficient permissions or a connection error), the cell will turn red and an error flash message will appear. Both red coloring and error message will remain in place until you finish your edits to help you identify the failed edits.
Known issues. Fields that have dependency on other fields, such as parts of an address, can not be edited inline.
Mass delete records.
Mass delete action is now available at every grid in the application, allowing you to quickly delete records in bulk. The number of records to be deleted at once is limited to 5000 by default, although the developer may change this setting if the server capabilities permits.
Grid view improvements.
Grid column management.
Grid columns are no longer set in stone by configuration file; the user may now add or delete columns and change their order of appearance. To do so, click on the Table settings button—the list of all columns available will be displayed. Drag them up and down to reorder columns in the grid, check or uncheck to make them appear or disappear. Changes are applied on the fly, and after you have achieved the view you want, save it as a grid view to access it later.
Developers may configure which columns are available for the user, and make some columns mandatory to display (i.e. non-manageable). Custom fields can also be added to grids via entity config.
Set custom grid view as default.
You may now set your custom grid view as default, and it will be displayed every time you open an entity grid via menu or the direct link.
New UX for Tags.
In this release we have completely overhauled the look and feel of Tags, and made them universal.
Firstly, Tags are a separate entity feature, akin to activities, and should be enabled or disabled in the entity management—direct relations to the Tag entity are no more. Enabling tags will automatically add them to the edit & view forms of an entity, and will make the Tags column available in the entity grid. They can be enabled or disabled for every entity, including custom ones.
The user experience of tag manipulation has also been improved. Tags can now be edited inline everywhere—in grids and on the view pages, allowing users to tag read-only records such as Magento customers in one-way sync setups. We have also redesigned the look and feel of tags, and they look much, much better now.
In reports or segments, Tags column can be added as an entity "field", allowing the user to list all the record tags in one row without grouping.
Known issue: Tags can no longer be manipulated on the Edit forms. We will address this in the future releases.
OAuth 2.0 for easier integration with Gmail
With this feature, users will be able to connect to Gmail servers quickly and smoothly, almost in a single-click fashion. The prerequisite is to enable OAuth 2.0 connection in the system config. Along with that, the admin must provide client ID and secret of a working project that has Gmail API enabled (Here is a handy guide on how to do so.)
From the user perspective, enabling Gmail connection is much easier than IMAP/SMTP configuration: simply select the Gmail account type in Email synchronization settings, then click Connect and log in to your Google account in the browser pop-up that appears. (Or select the account if you have logged in this browser already.) The connection will be established and you will see the list of folders available for sync.
The IMAP/SMTP configuration remains available and is not affected by this feature.
Import entity fields
You may now create and update entities quicker by importing their fields in CSV format. It works the same way as CSV import at grids: you can download the data template first and then import the desired fields to your entity.
Automated REST API for GET requests
We have started to automate entity APIs in order to speed up platform development and improve the dev experience. After this release, all GET operations for all entities will be available via REST API straight out of the box, no extra development needed. In addition to availability of all entities for GET operations, the new API provides:
- Application of User ACL to all resources
- Possibility to control entity availability via API
- Possibility to control entity fields and relations availability
The new API is based on JSON API implementation. The old API remains available with URLs unchanged (/api/rest/{version}/...). The new REST API URLs will start with /api/....
Performance improvements
We have addressed application performance in the variety of ways, and have earned improvements in page loading and app response times ranging from 10–15% up to 50%. In particular, we have addressed application scaling, optimized performance of entity configs and worked on base HTTP requests. Also, we have removed deprecate option sets.
Other improvements
- The owner's parent business unit is now displayed at the record view, allowing the viewer to identify them quicker.
- Apply range filters for numerical fields in grids
- Manage field tooltips from the UI
-Override calendar-view.js in customizations
Release Notes
New features – Platform.
Inline editing in grids
This feature allows you to quickly process large amounts of data by editing record values inline in the grid.
Using the feature is simple: hover the mouse over a grid cell. If it is editable, it will be colored yellow and an "edit" icon will appear in its top right corner. Click this icon or double-click the cell itself to get into the Edit mode. In this mode, the cell you're editing will turn into a field or control that is "soaring" above the grid with two Apply and Discard buttons on its right. Both the row and the column header of a cell you're editing will be highlighted with yellow to help you identify the record and the attribute you're editing.
If you press Enter, your edit will be applied and you will move to the next row. If you press Tab, you will move to the next editable cell on the right. Shift+Enter and Shift+Tab move you correspondingly upwards and leftwards.
The input is validated immediately, and if validation fails, the editing control won't move you will see an error message (e.g. "This value is not a valid email address").
Known issues: So far this feature is limited to grids of Accounts, Contacts, Leads, Opportunities, and Tasks in the default OroCRM setup.
Grid column management
Grid columns are no longer set in stone by configuration file; the user may now add or delete columns and change their order of appearance. To do so, click on the Table settings button—the list of all columns available will be displayed. Drag them up and down to reorder columns in the grid, check or uncheck to make them appear or disappear. Changes are applied on the fly, and after you have achieved the view you want, save it as a grid view to access it later.
Developers may configure which columns are available for the user, and make some columns mandatory to display (i.e. non-manageable).
New UX for Tags
In this release we have completely overhauled the look and feel of Tags, and made them universal.
Firstly, Tags are a separate entity feature, akin to activities, and should be enabled or disabled in the entity management—direct relations to the Tag entity are no more. Enabling tags will automatically add them to the edit & view forms of an entity, and will make the Tags column available in the entity grid. They can be enabled or disabled for every entity, including custom ones.
The user experience of tag manipulation has also been improved. Tags can now be edited inline everywhere—in grids and on the view pages, allowing users to tag read-only records such as Magento customers in one-way sync setups. We have also redesigned the look and feel of tags, and they look much, much better now.
In reports or segments, Tags column can be added as an entity "field", allowing the user to list all the record tags in one row without grouping.
Known issue: Tags can no longer be manipulated on the Edit forms. We will address this in the future releases.
Automated REST API for GET requests
We have started to automate entity APIs in order to speed up platform development and improve the dev experience. After this release, all GET operations for all entities will be available via REST API straight out of the box, no extra development needed. In addition to availability of all entities for GET operations, the new API provides:
- Application of User ACL to all resources
- Possibility to control entity availability via API
- Possibility to control entity fields and relations availability
The new API is based on JSON API implementation. The old API remains available with URLs unchanged (/api/rest/{version}/...). The new REST API URLs will start with /api/{version}/....
Performance improvements
We have addressed application performance in the variety of ways, and have earned improvements in page loading and app response times ranging from 10–15% up to 50%. In particular, we have addressed application scaling, optimized performance of entity configs and worked on base HTTP requests. Also, we have removed deprecate option sets.
Other improvements
- Apply range filters for numerical fields in grids
- Manage field tooltips from the UI
- Override calendar-view.js in customizations
Release Notes
List of improvements and fixed bugs:
- Improved performance of import-tracking cron command
Release Notes
List of improvements and fixed bugs:
- Improved performance of import-tracking cron command
Release Notes
List of improvements and fixed bugs:
- Fixed issue with identical extended field names
- Fixed issue with upgrade of deleted fields
- Improved performance of import-tracking cron command
Release Notes
List of improvements and fixed bugs:
- Disabled proxy usages during installation
- Added ElasticSearch search with middle name
- Fixed impossible to upgrade with deleted fields
- Removed deleted extended fields from extended caches
- Removed deprecated Twig extension
- Created a migration to convert existing OptionSets to Select and Multi-Select
- Upgraded Doctrine to eleminate the Security Misconfiguration Vulnerabilit
- Fixed reports' charts
- Other minor changes
Release Notes
Visual workflow configurator.
Workflow Configurator now has a drag-and-drop interactive option. This option helps to visualize the flow, making it easier to design and manage complex workflows.
List of its capabilities:
- Visual representation of all existing workflows with zoom functionality that allows to get different overviews of a workflow.
- Hide transition labels to increase legibility of the workflow and concentrate on the flow itself.
- In Edit mode the tool becomes interactive: You may click on steps and transitions to edit, clone, or delete them. Also, simply drag steps and transitions over the chart to reorganize them or draw a new transition between the steps you want.
- The editor includes auto-sorting algorithm that reorganizes steps and transitions in the workflow for maximum readability that also follows the logic of the flow taking into account positions of the steps within the workflow.
- Undo and redo your actions to easily correct mistakes.
The old table configurator is still available and maintains the same functionality as before.
New and extended APIs to work with emails.
A couple of new APIs have been added to the system to support interaction with emails. These APIs make possible to:
- Manage emails
- Manage email associations (contexts) in OroCRM
- Create Leads, Opportunities, and Cases based on email data in OroCRM
Segmentation based on Data audit.
A new class of filtering queries has been added to the system, allowing to segment out:
- Records whose fields have been changed within a specific timeframe — e.g. list all Contacts who had email changed in the past year
- Records whose fields have been changed to a specific value within a specific timeframe — e.g. list all Leads that have been qualified in the past month.
Improvements to search.
- Custom fields and entities are now included into search.
- Brackets are now supported in search queries.
- ACL is now applied to search results so the users are only getting results they have access to
Other minor changes.
- Improved filtering on option set attributes, allowing for multiple selections.
- The application has been upgraded to Symfony 2.7 and migrated to Doctrine 2.5
- Select2 component has been improved to automatically initializes select2 widget.
- Documentation for the new Oro Layout component has been added with examples of use.