CUBA Platform Changelog
Version 5.6.12
- In
GroupTable
, select all nested rows when clicking on a group row.
- Disable "Add To Set" functionality if
FoldersPane
is disabled
- More convenient advanced filter properties saving.
- [FTS] Added asynchronous reindexing.
-
Bug fixes, including:
- Firefox 43 renders popup notifications slowly.
deploy
task does not work on Gradle 2.8 and 2.9.
- "Default" checkbox does not work in the filter editor.
- Filter displays rows number component for
TreeTable
after switching to FTS mode.
- Duplicate values are possible in
UniqueNumbers
API on MS SQL.
- Slow editor screen commit if a deep composition with many entities is used.
DateField
ignores enable=false
.
- The mask for a
MaskedField
with valueMode="masked"
is not saved.
- Disabled mode of visual components is sometimes incorrect if set programmatically.
- Data Recovery fails if entity has CASCADE ondelete policy registered on mapped superclass.
FileUploadField
does not work in ReportEditor.
- Unable to upload/download files without extensions.
- Too short server names fields in Scheduled Tasks.
TasksWatchDog
does not remove finished background tasks from watching.
- Over 80 other bug fixes and improvements.
Version 5.6.7
- Support for Microsoft Edge.
- Fixed temporary freezing before showing a notification in Firefox 41.
- A number of bug fixes for Internet Explorer 9 and 10.
- The
FileMultiUploadField
component is now based on JavaScript when working in Chrome, Firefox, Safari, IE10+.
- The
Filter
component:
- Dynamic attributes can now be used in a filter for any entity.
- The component does not show the implicit AND group on top level.
- If
enabled=false
, the Add condition link and disabled actions in the settings menu are not shown.
- Fixed bug which prevented a filter from being applied if the component had no ID.
- The
MapViewer
component:
- Fixed setting gradient colors for heatmap layers.
- Support for circle overlays.
- Fixed bug in
SearchPickerField
when selecting an option from the drop-down list by Enter.
- A number of bug fixes in the
Chart
component.
- Fixed exception in the Reports browser when sorting by the Group column.
- Fixed handling of the
ext:index
screen XML attribute for inherited elements.
- Added method
expandUpTo()
to the Tree
component.
- A user now cannot accidentally hide all columns in a table.
- Default scrollbars are shown by default. Use the
$cuba-scrollbars-style-enabled
variable in
halo-defaults.scss
to show styled scrollbars in Chrome.
- The
@between
JPQL macro can now contain arithmetic expressions, e.g:
@between(u.createTs, now - ? + 1, now, day)
- Improved collection datasource parameters handling:
- Support for value path in
custom
parameters: select c from ref$Car c where c.model.name = :custom$model.name
- For a
ds
parameter with null value, a dependent datasource query is executed if the parameter
contains a value path, e.g. :ds$User.group.id
- Over 70 other bug fixes and improvements.
Version 5.6.4
This is the first public release of platform version 5.6. All significant changes from version 5.5 are listed
below.
- Potentially breaking changes:
- The
parse()
method of IntegerDatatype
and LongDatatype
now throws
ParseException
on overfow and if a fractional part is present in the input string.
- Database creation scripts for PostgreSQL now use
create extension
directive which
requires PostgreSQL 9.1. Ensure that you use PostgreSQL version 9.1 or above.
- The new BPM (Business Process Management) base project is available. See
documentation.
- When restoring soft deleted entities, the whole graph of entities deleted by cascade relations is restored.
For example, if you have deleted a Role with Permissions, after restoring the Role the Permissions will
also be restored automatically.
- Improved usability of the Administration > Data Recovery screen.
- Table component:
- Added API for improving
Table
performance:
Table.PlainTextCell
can be used instead of Label
component to display text
in generated columns.
- The
setClickListener()
method can save you from adding generated columns when you need
to draw something in cells and receive notifications when a user clicks inside these cells.
- The
cuba.web.table.pageLength
and
cuba.web.table.cacheRate
application properties enable fine-tuning of
Table
performance in the web client.
- The value of the column's
description
attribute is diplayed
in a popup when hovering over the column caption.
- Several
StyleProvider
s can be added to a Table
. See addStyleProvider()
and
removeStyleProvider()
methods.
- GroupTable component:
- Groups can be expanded from keyboard (with Right and Left arrows).
- Number of items in groups can be hidden with the
setShowItemsCountForGroup()
method.
- Filter component:
- The maximum number of fetched rows is now selected from the drop-down list with
the predefined set of values: 20, 50, 100, 500, 1000, 5000. If you want to return the old text field to allow
a user to input arbitrary values, add
textMaxResults="true"
attribute to the filter XML or
use the setTextMaxResults()
component method.
- Added
collapsable
and collapsed
XML attributes.
- Added
setMaxResults()
which is useful when the Show rows field is hidden.
- Button
does not react on keyboard shortcuts containing Enter or Space plus modifiers.
- Added
setLookupScreenDialogParams()
method for
TokenList component.
- Added
visible
attribute to
TabSheet
tab XML element.
- The
primary
parameter can be provided when creating a
DialogAction
to give it a special style and focus.
- Improved popup menu usability - now it can be used from keyboard only with Tab and arrows keys.
- A tooltip with keyboard shortcut is shown for a button if the description is not set.
- The Logout button has been added to the error dialog in the web client.
- Some UI elements related to dynamic attributes have been refactored, in particular
CategoryAttributeEditor
and RuntimePropertiesFrame
. SetValueEntity
class
has been removed.
- Support for dynamic attributes of entity and enumeration type in
REST API.
- Added
@enum
JPQL macro,
which allows you to use a fully qualified enum constant name instead of its database identifier in queries.
- Ability to download attachments of previously sent emails - see the Download attachments button in the
Administration > Email History screen.
- Added the
debugWidgetSet
Gradle task. It simplifies debugging browser-side code.
build.gradle
properties ext.tomcatPort
, ext.tomcatShutdownPort
,
ext.tomcatDebugPort
can be used to install Tomcat with non-standard ports.
- The default pattern for user full name has been changed to firstName lastName (see the
cuba.user.fullNamePattern
application property).
FileBrowser
is now implements Window.Lookup
interface so the file descriptor browser
can be used as a lookup screen.
- The new
ext:index
XML attribute helps changing the order existing elements in an extended screen.
- Standard action
icon names are now in the main message pack and can be overridden in the application project.
- Empty captions for actions and buttons can be set by defining
caption=""
XML attribute. Previously
this resulted in setting standard captions.
- Fixed error in 3rd level composition editor when editing just created entity.
- The Excel export mechanism now takes into account column data types.
- Better support for Microsoft JDBC driver.
- [Report Generator] The new Chart output type is available if your project also uses Charts and Maps
base project.
- [Report Generator] Support for XLSM files (XLSX with macros).
- Over 100 other bug fixes and improvements.
Upgrading projects from 5.5 to 5.6
- For automatic upgrade using Studio see this
document.
-
For manual upgrade, remove version number from CUBA XSD in all
*.xml
files by searching
http://schemas.haulmont.com/cuba/5.5/
string and replacing it with
http://schemas.haulmont.com/cuba/
.
- Run update database scripts either in Studio by executing Run > Update database, or in command
line by executing
updateDb
Gradle task.