Skip to content

Releases: axelor/axelor-open-platform

v6.1.3

15 May 09:22
975794e
Compare
Choose a tag to compare

6.1.3 (2023-05-15)

Fixed

  • Align script helper test expressions with Action behavior
  • Fix attributes that need a test instead of an evaluation
  • Fix action test condition when context proxy is used
  • Do not try to generate binary download link on unsaved record

v6.1.2

05 Apr 09:10
eb45454
Compare
Choose a tag to compare

6.1.2 (2023-04-05)

Changes

  • Improve resolution of AOP core dependencies

    Use AOP version defined in root project. This avoids to use a version
    coming from transitive dependencies.

    For example, if a module is built and published using AOP version 6.1.2
    and the root project use AOP version 6.1.1, it will now use the AOP
    version of the project, ie 6.1.1 (instead of getting the AOP version of
    the transitive dependency of the module).

Fixed

  • Don't reload dashlet custom view when the widget is not visible

  • Disable exporting on Kanban views

  • Fix empty recipients list when posting message or adding followers

  • Fix onChange triggered after grid edit cancel

  • Fix missing "refresh", "new", "prev", and "next" keyboard shortcuts on cards and kanban views

  • Fix moving record on top level grid

  • Fix grid not editable depending on readonly/canEdit conditions

  • Fix redefined User namecolumn in collaboration widget

    When the namecolumn of the User entity is redefined,
    it was not taken into account in the collaboration widget.

  • Fix editable grid preventing save

    On slow network and/or big grids, going in and out of grid edit
    may trigger duplicate grid edit events and mess with the counting
    of active editable grids. This could cause saving to fail.

  • Fix export on relational fields

  • Fix spinner buttons triggering onChange inside editable grid

  • Escape data when generating xml

  • Don't allow to post message without body

Security

  • Check canNew view attribute with "create new record" keyboard shortcut

v5.4.20

05 Apr 08:56
0d2bb5f
Compare
Choose a tag to compare
Release 5.4.20

v5.4.19

06 Mar 15:04
92b49c0
Compare
Choose a tag to compare
Release 5.4.19

v6.1.1

06 Feb 15:48
68bdcdb
Compare
Choose a tag to compare

6.1.1 (2023-02-06)

Fixed

  • Fix dirty view when an editor contain a button

  • Don't set default value on dotted fields of existing records

    This fixes values mismatch of dotted fields having default values after saving new record
    from form view and switching back to grid.

  • Fix merging of namecolumn fields in code generator

  • Fix multiple grouping on grid

  • Fix reloading meta on systems having high number of cores

  • Fix onnew popup actions called with delay

  • Fix hidden panels/buttons in editor when the record changes

  • Fix details from view attrs reset when reloading from grid/tab

  • Fix auth provider setting exclusive

  • Forbid adding init params

    When merging properties, it should be forbidden to add any init params,
    whether we're overriding fields or adding fields.

  • Don't warn about unchanged ref when merging entity props in code generator

    ref may be specified as simple name or fully qualified name.
    When one is using simple name, compare by simple name only,
    as to avoid spurious warning.

  • Fix tab refresh with HTML dashlet

  • Fix grid grouping with evaluated scale

    Fix grid grouping when there are fields using scale evaluation (x-scale="field").
    Use the maximum scale in the group for the formatted aggregation.

v5.4.18

06 Feb 15:34
83bf152
Compare
Choose a tag to compare
Release 5.4.18

v6.1.0

03 Nov 14:40
d59f088
Compare
Choose a tag to compare

6.1.0 (2022-11-03)

Changes

  • Change code generator strategy to merge item attributes

    Previously, the code generator replace the field definition by the new one. Now
    the code generator will merge initial field attributes with overridable attributes.
    So, only necessarily attributes that need to be override should be defined in the
    overwritten entity.

    This applies to both entities and enums.

    In the case of entity fields, there are a few restrictions:

    • Attributes that are not overridable:
      • initParam
      • column
      • column2
      • ref
      • mappedBy
      • table
      • tz
      • json
    • Attributes that are overridable with some conditions:
      • large: large field cannot become non-large
      • transient and formula: persisted field cannot become non-persisted
  • Remove auth.provider.xx.absoluteUrlRequired property

  • Allow setting min/max to blank in order to remove the attribute in code generator

  • Define maximum number of records per page

    This change the default api.pagination.max-per-page, currently allowing unlimited
    number of records per page, to 500.

  • Admins group can now customize views by default

  • Disable sorting on grids having canMove="true"

  • Let JpaFixture items persist error propagate

    JpaFixture is used for tests.

    In case of data error, tests failed without the actual cause, and there is no point in continuing
    and have obscure errors happen on wrong data.

  • Support of X-Forwarded-Context header removed in favor of X-Forwarded-Prefix

  • Reorder HTML widget buttons for consistency with Markdown widget

  • Reorder toolbar icons for consistency with Markdown widget

  • Move JpaFixture to axelor-test module

  • Upgrade HSQL JDBC from 2.6.1 to 2.7.0

  • Upgrade MySQL JDBC from 8.0.29 to 8.0.30

  • Upgrade UnboundID LDAP SDK from 6.0.5 to 6.0.6

  • Upgrade Junit from 5.8.2 to 5.9.1

  • Upgrade Upgrade embedded Tomcat from 9.0.63 to 9.0.65

  • Upgrade StringTemplate from 4.3.3 to 4.3.4

  • Upgrade Greenmail from 1.6.9 to 1.6.10

  • Upgrade Redisson from 3.17.3 to 3.17.6

  • Upgrade Resteasy from 4.7.6 to 4.7.7

  • Upgrade Groovy from 3.0.10 to 3.0.13

  • Upgrade Flyway from 8.5.11 to 9.3.1

  • Upgrade Hibernate Validator from 6.2.3 to 6.2.4

  • Upgrade Woodstox from 6.2.8 to 6.3.1

  • Upgrade Undertow from 2.2.17 to 2.2.19

  • Upgrade EclipseLink MOXy from 2.7.10 to 2.7.11

  • Upgrade Shiro from 1.9.0 to 1.9.1

  • Upgrade Spotless from 6.5.1 to 6.11.0

  • Upgrade Jsoup from 1.14.3 to 1.15.3

  • Upgrade Pac4j from 5.4.3 to 5.4.5

  • Upgrade Caffeine from 3.1.0 to 3.1.1

  • Upgrade Hazelcast from 5.1.1 to 5.1.3

  • Upgrade Jackson from 2.13.3 to 2.13.4

  • Upgrade Infinispan from 13.0.10 to 13.0.11

  • Upgrade PostgreSQL JDBC from 42.3.6 to 42.5.0

  • Upgrade Tika from 2.3.0 to 2.4.1

  • Upgrade Byte Buddy from 1.12.10 to 1.12.17

  • Upgrade Ehcache from 3.10.0 to 3.10.1

  • Upgrade Gradle from 7.4.2 to 7.5.1

  • Upgrade Gradle Node Plugin from 3.2.1 to 3.4.0

Features

  • Improve support of X-Forwarded-* headers

    App now have full support for X-Forwarded-* headers and provides
    better usage of proxy management.

    Supported headers are: X-Forwarded-Host, X-Forwarded-Port,
    X-Forwarded-Proto, X-Forwarded-Prefix, X-Forwarded-For.

    pac4j usage is now based on the current request. When redirecting urls,
    the Location is now absolute and no more relative to current servlet path.
    This avoids custom proxy configuration to rewrite the location or cookie path.

  • Implement setting scale on grid column by action

    scale attribute on a decimal field can be change on a grid column by an action.

    <action-attrs name="action-set-scale">
      <attribute for="items.price" name="scale" expr="eval: 10"/>
    </action-attrs>
    
    <form ...>
      ...
      <panel-related field="items">
        ...
        <field name="price"/>
      </panel-related>
      ...
    </form>
  • Displays the number of displayed and totaled items on the DMS list view

  • Use colored letter on top right corner as placeholder user icon

    This aligns user display with mail message and collaboration.

  • Implement Markdown widget using TOAST UI Editor with Code Syntax Highlight Plugin

    Example:

    <field name="myTextField" widget="markdown"/>
    Attribute Description
    x-lite Enable lite toolbar (defaults to false)
    x-preview-style Markdown editor's preview style: tab (default), vertical
    x-initial-edit-type Initial editor type: markdown (default), wysiwyg
    x-hide-mode-switch Whether to hide edit typo switch tab bar (defaults to false)
  • Fall back to colored letter user image in mail message thread in case of permission failure

  • Allow to get value of field with selection in string templates

    For example, use <SaleOrder.statusSelect.value> to get the value of the selection.
    With <SaleOrder.statusSelect>, you still get the title of the selection.

  • Support x-field attribute with InfoButton widget to specify the bound field

    Example:

    Use the x-field attribute on info-button widget to specify the bound field. When using x-field,
    the button and the field are 2 distinct elements. Any attributes defined on that field will be used to
    format the value. Moreover, this allows to change the button attributes without impact on the bound field.

    <panel>
      <button name="amountBtn" title="Amount" widget="info-button" x-field="totalAmount" onClick="my-action"/>
      <field name="amount" hidden="true"/>
    </panel>
  • Dynamically evaluate x-scale from context

    On a decimal field, x-scale attribute accept an field name for a dynamic evaluation.
    Grid and form view are both supported.

    <field name="decimalField" widget="Decimal" x-scale="currency.decimalPlaces" x-precision="18"/>
  • Implement support to see users on same view in realtime

    This allows to see users that are seeing/editing/updating the current opened record.

    Feature can be disabled with view.collaboration.enabled property. By default, it is enabled.
    On groups, there is a new boolean canViewCollaboration to determine whether members
    can view collaboration (true by default).

  • Introduce default number of items displayed per page config

    Introduce new config api.pagination.default-per-page :

    # Define the default number of items per page
    api.pagination.default-per-page = 40
    

    This config is used in UI, especially in grid views, to define the default number of items
    displayed per page. Default value is still 40 records.

  • Allow code generator to merge transient and multirelational fields

    Previously it was not able to override any attributes of transients and collections fields.
    Now it is allow to change some of their attributes.

  • Implement client-side sorting of o2m/m2m grids

    When there were some pending changes on a grid, sorting used to be disabled.
    This is no longer the case thanks to client-side sorting.
    Also transient/dummy fields can now be sorted.
    Only o2m/m2m grids can be sorted client-side.
    Other grid views that use pagination still send search request upon sorting.

Fixed

  • Fix truth value of action test expressions

    When evaluating action test expressions, "expr" should have the same truth value as "!!expr".

    It was working with types boolean, integer, date, time, datetime, enum, references (any-to-one),
    but was failing with long, decimal, string, binary, collections (any-to-many).

  • Fix x-scale="0"

  • Fix blank m2o in grid when there is no namecolumn

v6.0.4

02 Nov 13:37
0fc37f8
Compare
Choose a tag to compare

6.0.4 (2022-11-02)

Changes

  • Upgrade Hibernate from 5.6.9 to 5.6.12

    This fixes null mapped one-to-one field on an entity loaded from L2 cache.

Features

  • Update meta field labels and descriptions when restoring meta models

    Update meta field labels so that they can be used in grid customization.

  • Improve details-view usage

    In a details-view, the form view can be closed on demand or if there is no selected
    line. When we delete a line in the grid, the record in the form is no more displayed.

    This also fix duplicated requests, missing onLoad/onNew calls in some conditions and
    reset attrs states on form view.

Fixed

  • Preserve scroll position after saving form in details view

  • Fix grouped grid display when already initialized

  • Fix chart context evaluation when calling from action-view

  • Fix page on grid customization popup when containing extra fields

  • Make sure grids have committed before firing button action

    Fixes application that can become unresponsive after clicking on a button on a form view
    while having uncommitted editable grids.

  • Fix record pager display issue in popup

  • Fix missing cell css applied on item's parent

  • Merge search-filter fields title with the model field title in grid customization popup

  • Fix query fetching missing fields in TagSelect widget

  • Fix delete metafile if target file is not found

  • Fix dependency conflict between GraalJS and Birt with package "com.ibm.icu"

  • Fix adding duplicate dotted field in grid customization

    Fix adding duplicate dotted field in grid customization
    when it exists both in view and search filters.

  • Fix customize dashboard with drag & drop

  • Fix wrong number of attachments displayed on record toolbar paper clip icon

v5.4.17

02 Nov 13:23
1829418
Compare
Choose a tag to compare
Release 5.4.17

v6.0.3

28 Sep 16:25
3c563de
Compare
Choose a tag to compare

6.0.3 (2022-09-28)

Features

  • Add view action to help popover

Fixed

  • Fix missing item context after creating M2M item from popup

  • Check for view.allow-customization setting when saving customized view

  • Fix save action on top grid preventing further actions

  • Fix wrong css class applied on editable grid

  • Fix custom fields on editable grid

  • Fix restarting jobs after scheduler shutdown

  • Fix model class resolution in Groovy expressions

  • Fix refreshing html dashlet when record changes

  • Fix non editable grid view customization popup

  • Fix required field using TagSelect widget

  • Skip default values of dotted field in editable grid

  • Fix timezone issues with date adapter

    When the server is running on UTC- timezone, date could be converted back by one day.

  • Fix conflicting Order title

  • Fix saving boolean false filter

    In the case of boolean fields with operator false,
    filter was transformed in order to check for null or false.
    But by doing that, original criteria was lost, breaking meta filter saving.
    Replaced client-side operators true and false by new virtual operators
    $isTrue and $isFalse which perform client-side transformation.

  • Fix ReferenceError with "<=" operator on custom date/datetime fields

  • Fix sidebar toggle on window resize

  • Fix client authentication using path based callback url

    Some clients, ie AzureAd2Client, use path based callback url (/callback/AzureAd2Client) instead of default query based callback url (/callback?client_name=AzureAd2Client).

  • Fix missing TagSelect placeholder until we add and remove an item

  • Fix auth properties that exist in client and configuration

    When a property exists in the configuration and the client, try to set both.

    For example, scope exists in both GenericOAuth20Client and OAuthConfiguration.

  • Fix clipped field in Modern theme when using css="large" on WebKit-based browsers

  • Apply client-side operators on export and masss update

    Applying client-side operators was done on search only.
    Now, it is also done on exports and mass updates.

  • Fix setting $-prefixed dummy fields from onNew with default values

    Issue happened when setting $-prefixed dummy fields from onNew
    and record has some default values.

  • Fix wrong selected rows after grid sorting

  • Fix custom date/datetime criteria processing combined with column search

  • Use access token to retrieve user profile picture from OpenID Connect

    This fixes retrieving user profile picture from Azure Active Directory,
    where sending the access token is required.

  • Fix refreshing html view from tab right click

  • Fix save action with only default values

    This allow to save a record that contain default values (generally coming from domain definition)
    when calling save action. This behavior will be same as the toolbar save button behavior.

  • Fix changing dashlet url from action-attrs

  • Fix setting authentication map property

    This fixes setting GenericOAuth20Client.profileAttrs.
    Issue happened when there was no getter.

    # profile attributes: map of key: type|tag
    # supported types: Integer, Boolean, Color, Gender, Locale, Long, URI, String (default)
    auth.provider.oauth.profile-attrs.age = Integer|age
    auth.provider.oauth.profile-attrs.is_admin = Boolean|is_admin