Appkit SDK 4.7.0 Release Notes

Subscribe

Release date: 22 November 2019

New features

  • Appkit 4.7.0 adds support for Elastic 7.4.

  • A new filter, find, is added which searches the scope hierarchy to find a specified variable. For example: {{ 'myVariable' | find:this }}.

Improvements

  • The twigkit.http.filter.DevelopmentErrorFilter is replaced by the twigkit.http.filter.ErrorFilter. If you are using the twigkit.http.filter.ErrorFilter parameter in your web.xml file and an AJAX request fails, a JSON response is received identifying the status code of the REST call and any underlying causes. Previously, an HTML response was received.

    Example configuration:

    <filter>
        <filter-name>ErrorFilter</filter-name>
        <filter-class>twigkit.http.filter.ErrorFilter</filter-class>
        <init-param>
            <param-name>responseCode</param-name>
            <param-value>400,405,406,500,501,503</param-value>
        </init-param>
        <init-param>
            <param-name>excludedPaths</param-name>
            <param-value>/,/login,/login/</param-value>
        </init-param>
    </filter>
  • Accessibility improvements are made to the search breadcrumbs. The text, x, that removed the breadcrumb is replaced by an icon with the alt-text "Remove this term from the query" for use by screen readers.

    Remove this term from the query

  • For security purposes, any existing incoming userID value is removed and replaced when impersonation is enabled.

  • When a user enters incorrect login credentials, the username is preserved in the form and the URL for the user to verify.

  • The UI now sends a X-Requested-With=XMLHttpRequest HTTP header with every API request. This makes it easier for the middleware to detect XHR requests and handle errors appropriately.

  • Previously with the ApplyDynamicSolrDateFormattingResponseProcessor, the same time format was applied to days, hours, minutes, and seconds. Now, these values have their own formats.

  • When using the twigkit.search.processors.response.ApplyDynamicSolrDateFormattingResponseProcessor and twigkit.search.processors.query.DynamicSolrDateRangeQueryProcessor, a new fact value, gap, is added to the date facet. This value of this fact is the unit of the gap size that was applied.

Other changes

  • The default session timeout is updated from 10 minutes to 1 hour, to align with Fusion 4.2.x.

Addressed Security Vulnerabilities

Bug Fixes

  • Fixed a bug that occasionally left a filter styled as being selected after another filter was chosen, despite the query results changing to reflect the new selection.

  • Fixed an issue that would occasionally let a response object from one view be used by another view.

  • Upgraded the JFrog protocol to https to prevent a [FATAL] Non-resolvable parent POM error.

  • Fixed a bug that occasionally caused "like" signals to generate the wrong annotation type metadata.

  • Fixed a bug with FacetFilterValueMappingProcessor mappings which prevented commas from being used with the value. Additionally, two parameters are introduced, separator and key-value-separator. For example:

    separator: ; // Defaults to ","
    key-value-separator: _ // Defaults to "="

    Using key-value-separator: _ will separate the following key value pairs properly: alpha,beta=greek_a,b=english.

  • Fixed a bug that rarely caused a Null Pointer Execption (NPE) error when a workflow platform was reading an underlying platform parameter.