Legacy Product

Fusion 5.10
    Fusion 5.10

    Appkit SDK Release Notes

    Latest Release: 4.14.0 (31 October 2022)

    Improvements

    • Swapped out dependencies on Log4j 1.2.x with SL4J in the Appkit code base.

    • Fix for a bug that would prevent interval facets from toggling. Fix requires the facet-list tag to not use the query=“” attribute.

    • Fix for an issue when using the <widget:spelling-suggestions> component that would allow a cross-site scripting attack if the query term included a <script> tag and the Fusion spellcheck component returned a spell correction.

    Previous releases

    4.13.0 (15 September 2021)

    • Upgraded AngularJS framework to 1.8.2

      • Version 1.8.2 meteoric-mining corrects $sceDelegate to ensure that resourceUrlWhitelist() is identical to trustedResourceUrlList().

    • Upgraded JQuery to version 3.60.

      • Version 3.60 corrects security issues during a pen test.

    • Fixed a bug where the selection of a query:suggestion component added the following to the URL: an mq parameter and an mq value surrounded by quotes.

    • Fixed a bug where the facet filter for a facet already applied did not clear when select=toggle.

    • Fixed a bug in the search:box with the action attribute where the queries on the search submission page were re-triggered before the page was redirected to the value listed in the action attribute.

    • Fixed an issue where extra requests were made when a new query was submitted if a fixed header and infinite scroll were used.

    • Fixed an issue to ensure a facet filter that contains special characters cannot be deselected.

    4.11.0 (21 July 2020)

    • Ability to limit the results displayed by the result-list to a subset of the array

      • For example, the following: <result-list response="response" first="2" last="5"> will display the 3rd, 4th and 5th results in the response.

    • ES7 platform can now be configured whether or not to track total hits.

      • In the ES7 platform config (for example, resources/conf/platforms/elastic/elastic.conf) you can now add this config to track total hits: track-total-hits: true

      • By default, this will be false and will max out at 10000 as stated in the ES docs.

    • It is now possible to specify whether to include or exclude the range filter boundaries by specifying the fromExcluded and toExcluded attributes to the <query:filter> tag.

      • For example:

        <search:query parameters="*" var="query">
        <query:filter field="age" from="25" to="50" display="25 to 50" fromExcluded="true" toExcluded="true"> </query:filter>
        </search:query>
    • Appkit no longer adds the apollo path prefix to Fusion API URLs. If still required, the path prefix may be set via configuration.

    • Fixed a bug where <search:response-statistics> are only updated when its specified response object is updated, not on any others.

    • Added support for Angular expressions as a value for the Bookmark-list collection parameter.

    • HighlightingUtils adds highlighting terms support when closing braces are absent.

    • Fusion pre-authentication filter now uses the JWT token subject field for the user name.

    • In collaborate:saved-query-list, the show-more user click option now specifies the number of additional list items to display.

    4.10.0 (27 April 2020)

    • A new attribute, auto-populate, is added to the <collaborate:saved-query-list> tag. When set to true, the saved search name is automatically pre-populated with the query term in the URL. The default value for this attribute is false.

    • Fixed a bug that sometimes caused selected filters to be removed from a query after applying new filters on the same facet.

    • Fixed a bug that sometimes returned invalid annotation IDs when using the social response processors, which prevented the end-user from further deleting the annotation (like a bookmark or saved-search).

    • Specifying how many annotations, such as bookmarks or saved-searches, to retrieve using the Social API would not result in the expected behavior. This has now been fixed.

    4.9.0 (27 September 2019)

    • The FusionProxy endpoint /twigkit/api/fusion/* now accepts nested URI paths as expected. For example:

      /insights/twigkit/api/fusion/collections/<collection_name>
      /insights/twigkit/api/fusion/apps/<app_name>/experiments

      Previously, an HTTP 400 error occurred.

    • Removing filters using the <query:filter action="remove"> tag will no longer remove filters added with the <query:filter value="bar"> tag. For example, the following will leave the filter on value="bar" intact:

      <search:query var="query">
           <query:filter field="foo" value="bar">
           <query:filter field="foo" action="remove">
      </search:query>
    • Previously, using the Solr platform in compatibility mode forced exclusive boundaries on date range filters to become inclusive. This affected date range filters in the Fusion platform.

      This behavior is fixed. Exclusive boundaries on range filters now remain exclusive in compatibility mode.

    • Toggle events now fire as expected when using toggle controls.

    4.8.0 (10 January 2020)

    • It is now possible to map a user’s LDAP roles to the application user’s group. This differs from the previous implementation to the AD pre-authorization filter, in that it reads the groups directly from the user object instead of querying for AD groups that the user belongs to.

      To enable this filter, add a configuration file under conf/security/ldap/provider.conf with the following parameters:

      enabled: true
      user: #Service account used to connect to LDAP.
      password: #Password for the service account. This can be encrypted using the twigcrypt binary.
      url: #Full URL to the LDAP server.
      user-search-base: #LDAP search base to restricted the search to.
      user-search-filter: #LDAP search filter to restrict the LDAP search.
    • It is now possible to use basic authentication against a Solr cloud platform using the parameters userName and password in the platform configuration.

    • The value of a highlighted field is now stored as the "display" field value, rather than replacing the original "actual" field value.

    • 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 }}.

    • 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