Initializing help system before first use

Summary of Changes

Review the major changes to Xpress Insight, Mosel, and VDL, and make the requisite source code modifications

Insight/Mosel changes

  • Xpress Insight 4.50 default configuration does not allow the main Mosel model of the app to load packages included in the app archive. For on-premises deployments, such dynamic packages can be enabled by adding the following line to the [insight] section of the xprmsrv.cfg file and restarting the FICO Xpress Insight Execution Worker service.

    MOSEL_BIM=./

    On-premises deployments can also load packages pre-installed in a directory described by the MOSEL_DSO environment variable.

    FICO cloud deployments and on-premises deployments with default configuration are required to use static linking of user defined packages for the main model. Models that link to user-defined packages will fail at the point the scenario is executed, with a Mosel runtime error reflecting the dynamic package was not found. Model code that includes user packages with the uses keyword should be modified to use imports in order to force static loading.

    Sub-models can use dynamic linking for user packages on-premises and on cloud with no configuration change required. The control parameter bimprefix can be used to set the path prefix to the dynamic packages.

    The app developer should ensure that an unprivileged user is not enabled to replace package files with untrusted versions. In particular, retrieving attachment files by tagname rather than filename should be used with caution.

  • Only entities declared as public (the entity type declaration or the entire declaration block prefixed by the public keyword) will be visible to Insight 4.50, irrespective of how the model is compiled. In previous versions if the model was compiled without the -s option to strip private symbols then private entities would be visible to Insight. Neither Workbench or (legacy)IVE editors apply the -s option by default.

    It is likely that an existing app depends on private entities being visible to Insight. To avoid data being discarded when these entities are not visible to Insight 4.50, an upgrade to an app compiled with a previous (Mosel 4.x based) version of the software will be rejected if one or more entities are no longer visible . A list of the missing entities will be displayed.

    Developers migrating an app to Insight 4.50 should mark all entities as public to avoid the upgrade being rejected. If some entities being marked as public are not strictly required then they can be excluded with the manage=ignore annotation or by removing the public keyword in a future upgrade.

  • Developers migrating an app to Insight 4.50 must rename the folder called project_attachments to attachments.
  • Workbench now compiles bim files into an output folder in the project, by default /out, and copies the master bim file into the root of the archive only on publish or download app. Therefore any legacy bim file in the root of a project is obsolete and should be deleted to avoid confusion

The preceding considerations directly impact the integration between Xpress Insight 4.50 and Mosel. In addition, Mosel 5 introduces changes which may alter the logic of your model, such as how arrays that are not explicitly defined as dynamic are handled. For more information, see Logic Changes introduced by Mosel 5.

VDL and Javascript API changes
  • Xpress Insight 4.50 introduces version 4.5 of both VDL and Javascript APIs, which consolidates some name changes and deprecations. It is recommended that apps be upgraded to this latest version, for more see Recommended changes—migrate to VDL/JS API 4.5.
    Note VDL and Javascript API versions older than 4.0 are still supported.

© 2001-2019 Fair Isaac Corporation. All rights reserved. This documentation is the property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except solely for internal evaluation purposes to determine whether to purchase a license to the software described in this documentation, or as otherwise set forth in a written software license agreement between you and FICO (or a FICO affiliate). Use of this documentation and the software described in it must conform strictly to the foregoing permitted uses, and no other use is permitted.