InRule Decisioning Version 5.0.x Release Notes

  • Updated
Type Case ID Summary Description
FEATURE    101589 InRule for JavaScript - Add support for the FV function • The Future Value (FV) function is now available for use in the Javascript Engine.
FEATURE    101600 InRule for JavaScript - Add support for the PMT function • The Payment (PMT) function is now available for use in the Javascript Engine.
FEATURE    101602 InRule for JavaScript - Add support for the PV function • The Present Value (PV) function is now available for use in the Javascript Engine.
FEATURE    102349 Add tooltips to Fire Notification Action screen and Notification Vocabulary template screen • Tooltips have been added to both the Fire Notification Action screen and the Notification Vocabulary Template screen to give examples of the tokenized message syntax.
FEATURE    103475 Provide a "Deep copy" option for the Copy Entity, Copy Collection, and Add Collection Member actions • Prior to this version, these actions did not allow a deep copy of entities. The Copy Entity action always performed a shallow copy, and the Copy Collection and Add Collection Member actions allowed for the selection between by reference and shallow copy only. With this enhancement, all of the options for these three actions have been made consistent. Each will display a setting called "Entity copy mode" with 3 distinct options: "By reference", "Shallow copy" and "Deep copy".
By reference: Creates a new reference at the target location pointing to the source of the copy operation. This results in no new Entities being created.
Shallow copy: Creates a new Entity at the target location, copying over all of the Entity's primitive Field values. However, the child Entity Field and Entity Collection values keep a reference to the existing Entities in the source location. This results in one new Entity being created.
Deep copy: Creates a new Entity at the target location, copying over all of the Entity's primitive Field values and creates new instances for each of the child Entity Fields and Entity Collections in the source location. If an Entity is found that has already been copied, the copied Entity reference will be used. This results in a new Entity being created for each unique Entity in the source.
FEATURE    103475 Provide a "Deep copy" option for the Copy Entity, Copy Collection, and Add Collection Member actions (continued) • The default for new Copy Entity actions will be "Shallow copy" as this is the current default behavior of the Copy Entity action.
The default for new Copy Collection and Add Collection Member actions will be "By reference" as that is the current default for new Add Collection Member (current "Copy Entity" unchecked) and Copy Collection (current "Copy Link" option selected).
NOTE: The new "Deep copy" options will not be supported in the JavaScript engine.

The former CopyLinktoLink method in the SDK has been marked as deprecated (with warning / non-breaking).
 
NOTE: These changes require a Rule Application XML FeatureVersion increase (to version 102) and upgraders to ensure old behavior for upgraded Rule Applications is maintained.

NOTE - BEHAVIOR CHANGE: With this enhancement, an issue was fixed with the Copy Collection functionality. In prior versions, when the “Copy entity” option was selected (which equates to the new “Shallow copy” option) and duplicate Entity Collection Members were encountered, new instances were created for each. For example, copying a collection with member 1, 2 and 2 would previously create members 3, 4 and 5. This has been resolved so that new instances are only created for each unique instance in the source, resulting in a “mirror image” behavior. In the example of members 1, 2 and 2, it will now be copied as 3, 4 and 4.
FEATURE    103670 Rule Application Report - include tagged categories • Tagged categories will now display in the associated rule construct's "Description, Notes and Categories" section of the Rule Application Report.
FEATURE    104495 Add "Duplicate" version functionality on versions pane to create new version as copy of selected version • A "Duplicate" button has been added to the Versions pane. This button will create a new version by taking a copy of the selected version. The name of the newly created version will be "Copy of " + <<selectedversionname>>.
The "Add" button has not been changed. It will continue to create a new version by taking a copy of the Default version. However, now that version will be named "Copy of (Default)" for clarity.
FEATURE    104727 Web Catalog Manager - When promoting a revision between catalogs, append the comments and revision number from the source revision to the default initial comments • The source revision number and comments (if they exist) from that revision in the source are now appended to the default comments when promoting a Rule Application via the irCatalog Manager Website.
FEATURE    105129 Provide option to compile file-based Rule Applications on a background thread • When a Rule Application is selected for running rules, it is cached on the client.  If the Rule Application is still in the cache and the file has not been modified since, the cached version is used. If a new version is available, the latest revision is downloaded, compiled and cached. By default, the new version check and recompilation will be performed on the main thread. This feature provides a new configuration option to enable changing the default behavior and to check for a new version and compile on a background thread. With this setting, the previous version will continue to be available for execution until the new version has finished compiling.
This functionality was available for Catalog Rule Applications as of v4.6.16. The config setting for this was:
<inrule.runtime>
<catalogRuleApplication enableBackgroundCompilation="true" />
</inrule.runtime>
That config setting will continue to be honored for Catalog Rule Applications. However, a new config setting has been introduced for File-based Rule Applications. Using this new setting will apply to both Catalog and File-based Rule Applications.
<inrule.runtime>
<ruleEngine enableBackgroundCompilation="true" />
</inrule.runtime>
FEATURE    105594 Validate irWord support for Microsoft Word 2016 • Product support for Microsoft Word 2016 has been validated. No code updates were necessary.
FEATURE    106410 Remove Test Suite's input data state "Mappings" button • The Regression Tester Test Suite Input Data State's "Mappings" button has been removed as it is not usable via the GUI. 
FEATURE    106444 Difference Report should show explicit row and column values when an inline table is inserted, updated, or deleted

• The Difference Report now displays specific details about changes to rows and columns in inline tables rather than the previous "has been modified" text.
FEATURE    106445 Difference Report should show explicit row and column values when an inline value list is inserted, updated, or deleted

• The Difference Report now displays specific details about changes to rows and columns in inline value lists, rather than the previous "has been modified" text.
FEATURE    106816 Validate irCatalog support for SQL Server 2016  • Product support for SQL Server 2016 has been validated. No code updates were necessary.
FEATURE    107686 Rule Application Report should list notes and descriptions for rules • The Rule Application Report now displays any Notes and the Description for the rules in a section titled "Description, Notes and Categories".
FEATURE    107802 InRule for Microsoft Azure - Document process for saving license file to BLOB storage • The InRule for Microsoft Azure documentation was updated to detail the process for uploading a license file to BLOB storage and pointing the application to that license file.
FEATURE    107977 On XML underlying the Performance Statistics Report, the function compile time should be separated from rule execution time • A separate line item for function compile time is now included in the underlying XML for the Performance Statistics Report.
FEATURE    107989 For rule execution time out errors, show the rule execution time and the time out setting • Rule execution timeout errors now display the rule execution time and the time out setting.
Cycle count exceeded errors now display the cycles and the maximum cycle count setting.
FEATURE    108008 irVerify - Support loading JSON test data from the "Load" menu on the Ribbon

• The irVerify "Load" menu no longer has a drop down. Clicking "Load" now opens a dialog with the file-type option as any one of "XML", "JSON" and "TestScenario" types. Individual file type options for "XML", "JSON" and "TestScenario" are available for further specified filtering.
FEATURE    108145 InRule for Microsoft Azure - Diagnostics Configuration and Documentation

• Diagnostics can now be enabled for the Azure Packages. The Log Level setting can be updated and appropriately impacts what is logged by InRule. The aggregated logs are stored in the specified location in Azure storage. 
FEATURE    108500 Create InRule SDK as NuGet Packages • The following NuGet packages will be installed along with the "irSDK" component via the InRule Installer:
[InRule.Repository] - Assemblies included: InRule.Repository, InRule.Common 
[InRule.Runtime] - Assembly included: InRule.Runtime
[InRule.Authoring.Core] - Assemblies included: InRule.Authoring, InRule.Authoring.Editors, InRuleAuthoring.Windows 
[InRule.Activities] - Assembly included: InRule.Activities  
[InRule.irAuthor.SDK] (Meta-package - includes no assemblies)
This package uses package dependencies to install the packages needed to write an irAuthor extension.
[InRule.Authoring.SDK] - Assemblies included: InRule.Runtime.Testing and third-party UI library assemblies. 
This package uses package dependencies to install the packages needed to write a custom authoring application (i.e. not inside irAuthor). 
FEATURE    108500 Create InRule SDK as Nuget Packages • The following NuGet packages will be installed along with the "irSDK" component via the InRule Installer:
[InRule.Repository] - Repository, Common 
[InRule.Runtime] - Runtime
[InRule.Authoring.Core] - Authoring, Authoring.Editors, Authoring.Windows  
[InRule.irAuthor.SDK] (Meta) (This is what is needed to write an irAuthor extension)
[InRule.Authoring.SDK] -  Authoring.Runtime, Runtime.Testing and Actipro assemblies (Files needed for custom authoring application (i.e. - not inside irAuthor))
[InRule.Activities] - Activities  
FEATURE    109107 irX for JavaScript - Force Rule Application update when packaging for JavaScript to ensure latest rule changes are included • Prior to this change, if the user did not navigate away from the rule currently being edited before clicking the Package button, the changes were not included in the JavaScript. With this fix, the latest changes are always included in the packaged JavaScript.
FEATURE    109188 Update Grace Period handling back to 5 days • With this release, the static Grace Period expiration date has been removed, and the product will now have a 5 day Grace Period. The Grace Period counter begins the first time a license validation check is performed.
FEATURE    109379 InRule for JavaScript - Remove requirement of referencing the JavaScript Authoring extension to get the return type when calling irDistribution service • The code sample has been updated to show how JavaScript can be obtained from a REST service without referencing the authoring assembly.
FEATURE    109440 Remove Business Language Assembly • The Inrule.Authoring.BusinessLanguage assembly has been removed from the product.
FEATURE    109529 InRule for JavaScript - Update account closed email verbiage The email verbiage that is sent when an irDistribution API account is deleted has been updated.
FEATURE    109592 irX for JavaScript - Packaging Options Updates • Packaging options for Logging, Authoring Features and Documentation have been added to the Packaging dialog in the irX for JavaScript extension.
FEATURE    109693 InRule for JavaScript - Updates to reflect irDistribution naming • The irX for JavaScript extension and documentation has been updated to reflect the irDistributionTM product name.
FEATURE    109780 InRule for JavaScript - Documentation updates for Browser support • The InRule for JavaScript Help and the InRule Install Help files have been updated to document the requirement for a browser or JavaScript engine that is ECMA Script 5 compatible.
FEATURE    109796 Add searchability to irAuthor to show exact Inline Table rows from search results • Row numbers are now referenced in the search results and visible in the Inline table so that the user can easily navigate to the matching row.
FEATURE    109856 Inline Value Lists should support import from Excel or Database just like the Inline Tables • Inline Value Lists now support the same import options as Inline Tables:
From Database
Comma-delimited from Clipboard
Tab-delimited from Clipboard
FEATURE    109857 When Inline Value List has a duplicate key, irAuthor should show the row with the duplicate value when user selects the error message • Row numbers are now referenced in the error message and visible in the Inline Value List so that the user can easily navigate to the matching row.
FEATURE    109865 InRule for JavaScript - irDistribution - User can Reset Password The irDistribution login page now has a 'I forgot my password' link. This workflow sends the user an email with a link to reset their password.
FEATURE    109866 InRule for JavaScript - irDistribution - User can Change Password Once successfully logged into irDistribution, a Change Password option is now available.
FEATURE    109960 InRule for JavaScript - Update String comparison handling String comparison now uses ordinal character comparison to ensure consistent string behavior across different JavaScript engines
FEATURE    110008 REST Service Endpoint - Add setting to support self-signed certificates
There is now a checkbox on the REST Endpoint screen to allow self-signed certificates. The checkbox is set to "false" by default and is intended for use in Development environments only. This option can be overridden via Endpoint Overrides in irVerify, both the irServer Rule Execution Service SOAP and REST endpoints, and via irSDK.
FEATURE    110011 The REST Endpoint configuration screen should not show password in clear text

• The REST Endpoint configuration screen now uses a password control so that the password is masked and not shown in clear text.
FEATURE    110015 Update InRule 5 Preview Release Grace Period to 3/1/2016 • The Grace Period for this preview release has been updated to 3/1/2016.
FEATURE    110059 Install irX files into subfolders of irAuthor/Extensions • The irX for CRM and irX for JavaScript files are now installed into separate sub folders under the irAuthor/Extensions directory.
FEATURE    110099 REST Service Endpoint - Send pre-authenticated credentials to help with performance in batch mode • When connecting to authenticated endpoints, the Execute REST Service Action will attempt to reduce the number of 401 responses by sending pre-authenticated credentials on the request after the initial non-authenticated request succeeds.
FEATURE    110140 Update Copyright dates for 2016 • All copyright dates have been updated to 2016.
FEATURE    110184 InRule for JavaScript - Framework for adding Rule Application Definition properties to JavaScript Runtime Elements A framework has been added for accessing various authoring features at runtime via the JavaScript SDK.
FEATURE    110188 InRule for JavaScript - Add Attributes metadata to SDK The Rule Application Attributes metadata is now available at runtime via the JavaScript SDK. The following are examples of how to access this metadata.
<element>.metadata.getAttributeValue("MyAttributeKey");
<element>.metadata.getAttributeValue("MyAttributeKey", "MyAttributeGroupKey");
<element>.metadata.getAttributes();
<element>.metadata.getAttributes("MyAttributeGroupKey");
FEATURE    110195 InRule for JavaScript - Add Display Name metadata to SDK The Rule Application Display Name metadata is now available at runtime via the JavaScript SDK. The following is an example of how to access this metadata.
<element>.metadata.displayName;
FEATURE    110199 InRule for JavaScript - Add Data Type metadata to SDK The Rule Application Data Type metadata is now available at runtime via the JavaScript SDK. The following is an example of how to access this metadata.
<element>.metadata.dataType;
FEATURE    110203 InRule for JavaScript - Add Default Value metadata to SDK The Rule Application Default Value metadata is now available at runtime via the JavaScript SDK. The following is an example of how to access this metadata.
<element>.metadata.defaultValue;
FEATURE    110253 Add UDF Example Rule Application to Install > Samples > Example Rule Applications directory and update Help documentation

• A "User Defined Function Examples" Rule Application and corresponding notes will now be installed to the Samples directory for rule authors looking to learn more about how to effectively use a variety of User Defined Functions. In addition, the irAuthor help file has been updated with a sub-set of these examples.
FEATURE    110254 Add Vocabulary Examples Rule Application to Install > Samples > Example Rule Applications directory

• A "Vocabulary Examples" Rule Application and corresponding notes and test XML files will now be installed to the Samples directory for rule authors looking to learn more about how to effectively use Vocabulary Templates.
FEATURE    110337 REST Endpoint self-signed certificate override documentation

• Information has been updated in the help file on how to override the REST endpoint untrusted certificate option, thus allowing self-signed certificates to be used.
FEATURE    110354 InRule for JavaScript - irDistribution Website "Support" and "Documentation" additions A link to the InRule Support site has been added to the irDistribution website.
In addition, documentation including the Help file, JavaScript Samples and Release Notes are now available.
FEATURE    110365 Update InRule 5 Preview Release Grace Period to 3/31/2016

• The Grace Period for this preview release has been updated to 3/31/2016.
FEATURE    110411 irVerify - Support saving JSON test data from the "Save" menu on the Ribbon

• The irVerify "Save" menu now has a 3rd option of "Entity JSON". It continues to support saving test data as "XML" or "Test Scenario".
FEATURE    110412 irVerify - Support viewing of JSON data in the Entity State Viewer • The irVerify "View XML" button on the ribbon has been renamed to "View Entity State" and now supports viewing the data in both JSON and XML formats. The default format is now JSON. The format can be changed from the View menu.
FEATURE    110413 irVerify - Support viewing, loading and saving JSON test data from the entity field context menu • The drop down menu option for Entity fields has been renamed from "XML" to "Entity State". The sub menu items have also been renamed and now support Loading, Saving and Viewing both JSON and XML.
FEATURE    110414 Regression Tester - Support loading and saving JSON test data • The Regression Tester has been updated to ensure that anywhere Entity Data State dialogs exist, both XML and JSON are supported. The default data type is now JSON.
FEATURE    110475 InRule for JavaScript - Add code sample comment in JavaScript file for SDK discoverability A code sample is now generated and available as a code comment in the JavaScript file. This sample uses the top level entity name within the associated Rule Application to give developers a relevant example of how to run rules using the JavaScript SDK.
FEATURE    110495 irServer Rule Execution Service - SOAP endpoint needs to allow overriding of "Allow Untrusted Certs"

• The irServer Rule Execution Service SOAP endpoint now allows overriding the "Allow Untrusted Certs" setting. (This override was already available on the irServer Rule Execution Service REST endpoint.)
FEATURE    110502 InRule for Microsoft Azure - Diagnostics  Documentation Updates • The Enabling Diagnostics section of the InRule for Microsoft Azure installation documentation has been updated.
FEATURE    110503 InRule for JavaScript - Help File Updates

• Various updates have been made to the InRule for JavaScript Help file. Most notably, a "Getting Started" section has been added and the sections reordered to better follow the typical order of the rule life cycle.
FEATURE    110530 InRule for JavaScript - Improve Error Handling on applyRules() and Documentation The applyRules() signature has changed. It now will always requires a call back so that asynchronous and synchronous error handling do not behave differently. The samples and help documentation have been updated to reflect this change. In addition, code samples with error handling best practices have been added to the InRule for JavaScript help file.
FEATURE    110535 InRule for JavaScript Help - Add JavaScript SDK Information

• A detailed API Reference section has been added to the InRule for JavaScript help file.
FEATURE    110604 InRule for JavaScript - Packaging Options Updates to API Similar to the packaging options for Logging, options have been added to the Packaging API for Authoring Features and Documentation. The InRule for JavaScriptHelp file > Packaging a Rule Application > Calling the irDistribution Service section has been updated with details.
FEATURE    110611 InRule for JavaScript - Packaging Options Updates to irDistribution web site Similar to the packaging options for Logging, options have been added to the irDistribution website for Authoring Features and Documentation.
FEATURE    110612 irX for JavaScript - Add "Validate" button to the JavaScript tab's Ribbon

• A "Validate" button now exists on the JavaScript tab. It executes the same behavior as the "Validate" button on the Home tab, compiling and validating the Rule Application based on the selected Target Platform.
FEATURE    110627 Installer - Change Release Notes format to PDF • The release notes will now be created as a PDF file rather than a Word document. The Installer will place this ReleaseNotes.pdf file in the doc folder of the installation directory.
FEATURE    110790 Change Points of Interest feature to show "Executes" and "Executed by" to top of list • The "Executes" and "Executed by" fields are now more visible. They appear near the top of the Points of Interest list, and out of the collapsed-by-default "More" subheading.
FEATURE    110887 irVerify - Support viewing, loading and saving JSON test data from the entities pane • The buttons for "View XML", "Load XML" and "Save XML" have been renamed to "View", "Load" and "Save" and now support both JSON and XML.
FEATURE    110941 Update InRule 5 Preview Release Grace Period to 4/30/2016

• The Grace Period for this preview release has been updated to 4/30/2016.
FEATURE    111144 irX for CRM - Refresh CRM Items button should report new CRM fields on mapped entities • Fields added to mapped entities since the last refresh of the metadata will now be visible in the "Refresh CRM Items" display. 
FEATURE    111144 irX for CRM - Refresh CRM Items button should report new CRM fields on mapped entities • Fields added to mapped entities since the last refresh of the metadata will now be visible in the "Refresh CRM Items" display. 
FEATURE    111190 Re-enable JIT optimizations

• Disabled some debug build flags in preparation for general release.  This will improve JIT compile times, resulting in improved engine performance.
FEATURE    111226 irX for CRM - Show Personal Views on "Select Test Data" screen • The "Select Test Data" screen for the irX for CRM authoring extension now displays Personal views in addition to System views.
FEATURE    111234 irX for JavaScript - Force Validate on "Package" • When clicking the "Package" button in the irX for JavaScript authoring extension, the Rule Application will now be validated. In addition, ticket 111789 will ensure that only "JavaScript" Rule Applications are packaged. Validating the Rule Application first will ensure that there are no unsupported features included before packaging the Rule Application via the irDistribution service.
FEATURE    111242 Blank header rows in REST Operation need better error message • The error message for empty "Headers" records in the REST Operation definition screen has been updated.
FEATURE    111536 Add Row Headers to data grids • "Row Headers" have been added to data grids in irAuthor to make empty rows more visually apparent.
FEATURE    111687 Compile time performance improvements • The compilation time has been improved for Rule Applications containing large Decision Tables that perform aggregate calculations on Collections.
FEATURE    111758 InRule for JavaScript - irDistribution - Disable HTTP completely HTTP requests have been disabled for irDistribution. Only requests via the HTTPS secure protocol will be accepted.
FEATURE    111770 InRule for JavaScript - irDistribution Service - Allow Subscription key to be passed in Authentication Header The irDistribution service now accepts the subscription key in a custom subscription-key header, in addition to the query string (to support backwards compatibility)
The documentation and samples have been updated to show the preferred method of passing the subscription key in the subscription-key header.
FEATURE    111855 irX for JavaScript - Prompt user to save / check in upon clicking "Package" if there are unsaved changes • Upon clicking the "Package" button in irX for JavaScript, if there are unsaved rule application changes, the user will now be prompted to save (or check-in) the changes.

If the user chooses to save / check-in, the changes will be saved and the packaging process will continue.
If the user chooses NOT to save / check-in, the changes will NOT be saved, and the packaging process will continue, using the in-memory Rule Application. In this case, when the user closes out of irAuthor, they will be prompted to save the unsaved changes.
FEATURE    111879 irX for JavaScript - Do not allow user to package if Target Platform does not include JavaScript • When clicking the "Package" button in the irX for JavaScript authoring extension, if the Target Platform is not one that includes JavaScript (e.g. All Platforms or JavaScript), then a warning dialog pops up indicating that Packaging can only occur if the Target Platform includes JavaScript.
FEATURE    111945 Enhanced Decision Table - Reduce compile time for large decision tables • By default, new decision tables will use a new enhanced mode which has compile and runtime performance improvements.
A compatibility mode checkbox has been added to allow decision tables to use the previous behavior. When this mode is selected, the identity of conditions that evaluate and actions that execute will include the row identifier (e.g. Row3). This means that any expression or action whose identity influences its execution may be affected by this setting:
GetElementId() syntax function will include the Row identifier (e.g. Entity1:1/RuleSet1/DecisionTable1/Row3/SetValue1 as opposed to Entity1:1/RuleSet1/DecisionTable1/SetValue1)
FireNotification action will fire for each row that matches (if Exit at first true is unchecked), even if multiple notifications is unchecked
The identity of rules and actions in the Rule Engine Feedback in irVerify (Rule Execution Log) will include the row identity
The downside of Compatibility mode is that the rule application cold-start will be significantly longer, and rule execution will be slower.
If compatibility mode is unchecked (enhanced mode in use), row identifiers are not included in the above scenarios resulting in identifiers for conditions and actions to appear relative to the table, not the current row. This results in much shorter cold-start and faster rule execution.
NOTE: If the Run Mode of the parent rule set is Auto-Optimized, Compatibility mode is the only option and must be used.
NOTE: These changes require a Rule Application XML FeatureVersion increase (to version 102) and upgraders to ensure old behavior for upgraded Rule Applications is maintained.
FEATURE    111962 Public interface to RuleCatalogConnection • A public interface, IRuleCatalogConnection, has been added to RuleCatalogConnection to aid in testing.
FEATURE    111968 Remove official support for Microsoft Dynamics® CRM Server 2011 • Dropping formal support for integration with Dynamics® CRM Server 2011 and removed version from supported versions list in the Installation Help file. Subsequent versions continue to be supported.
FEATURE    111989 InRule for JavaScript - Add support for SQL query value lists against Inline tables  Rule Applications containing SQL query value lists fed from inline tables can now be successfully packaged into JavaScript. The value list values are accessible from the Data Manager at runtime using the JavaScript SDK.
FEATURE    112049 irServer Rule Execution Service - Update documentation to include information about how to use Content-Type and Accept Header • Added the following to the irSDK Help > Application Integration with InRule > irServer - Rule Execution Service > Accessing via REST topic.
The irServer Rule Execution Service uses content negotiation to determine the request and response types. NOTE: If not specified, both the request and response types will default to XML.
Request Examples
Content-Type: application/xml
Content-Type: application/json
Response Examples
Accept: application/xml
Accept: application/json
FEATURE    112064 Validate support for Microsoft Dynamics CRM 2016 and Dynamics CRM Online • Product support for irX for Microsoft Dynamics CRM against Microsoft Dynamics CRM 2016 Server and Dynamics CRM Online has been validated. 
FEATURE    112074 irCatalog Manager Website - present error submission form to user when error occurs • When an unhandled error occurs in the irCatalog Manager Website, the user will now be presented with an error submission form. When submitted, the error and associated information will be sent to InRule for review.
FEATURE    112108 InRule for JavaScript - irDistribution Website - Update packaging call to have subscription key in Authentication Header rather than query string The irDistribution website will now send the packaging request with the subscription key in a custom subscription-key header, rather than in the query string.
FEATURE    112109 irX for JavaScript - Update packaging call to have subscription key in Authentication Header rather than query string • The irX for JavaScript authoring extension will now send the packaging request with the subscription key in a custom "subscription-key" header, rather than in the query string.
FEATURE    112130 InRule for JavaScript - irDistribution Website  - Remove file format verbiage from Documentation drop down The format suffix of (PDF) and (ZIP) has been removed from the list of items in the Documentation section of the irDistribution website.
FEATURE    112143 Add documentation for InRule NuGet Packages • A topic for "Using InRule NuGet Packages" has been added to the irSDK Help file.
FEATURE    112150 Install Help - Update Side by Side topic to explicitly list unavailable components • The Installer help file has been updated to explicitly list the components unavailable for side-by-side installation.
irWord
irStudio
irAdapter for BizTalk Server
irSDK installed into the GAC
FEATURE    112154 Remove parallelized rule execution and only use it for rule tracing • Rule execution is now always single-threaded.
Rule Tracing continues to use a background thread regardless of the MaxExecutionCores property.
The Max ExecutionCores property has been marked obsolete - non-breaking.
FEATURE    112246 Update utilized version of Azure SDK to v2.9 • The InRule for Microsoft Azure Cloud Packages now target version 2.9 of the Azure SDK
FEATURE    112264 irX for Microsoft Dynamics CRM - Updates to support future CRM product integrations • The irX for Microsoft Dynamics CRM assembly names have been changed to support future CRM product integrations.
Specifically, the InRule.Authoring.IrX.DynamicsCrm.dll assembly has been split into two assemblies:
InRule.Authoring.IrX.Crm.Common.dll
InRule.Authoring.IrX.DynamicsCrm.dll
FEATURE    112266 irX for Microsoft Dynamics CRM - Help and License Information Updates
The following updates have been made:

A "License Information" button has been added to the "Help" group on the DYNAMICS ribbon.
The "InRule® for Microsoft Dynamics® CRM Help" button has been renamed to "Help".
The File > Microsoft Dynamics® CRM option has been removed.
FEATURE    112270 Change “irX® for CRM” component name to “irX® for Microsoft Dynamics® CRM” • The name of the "irX® for CRM" component has changed to "irX® for Microsoft Dynamics® CRM".
As a part of this rename, the following additional changes have been made:
irAuthor > Extensions directory changed from "irX for CRM" to "irX for Microsoft Dynamics CRM"
irAuthor tab changed from "CRM" to "DYNAMICS".
License type prefix changed from “IRX-CRM” to “IRX-DYN”
FEATURE    112291 Installer and Activation Utility - Improve user experience when license keys are not in valid format • Invalid license keys will now result in the textbox being highlighted in red. Moving the mouse over the text box will display a tooltip about the expected format.
FEATURE    112344 Updates to support future CRM product integrations • To support a future release of the irX® for the Salesforce® Platform authoring extension, the following updates have been made:
The Rule Application Schema FeatureVersion has been increased from 102 to 103.
The Newtonsoft.Json assembly version for irAuthor has been upgraded from version 6.0.8 to version 8.0.3.
FEATURE    112364 irX for Microsoft Dynamics CRM - Ribbon Updates • The 4 buttons "New Microsoft Dynamics® CRM Rules", "Enable Current Rules", "Add / Update Entities" and "Refresh CRM Items" have been combined into a single button called "Manage Schema". 
The "Manage Schema" button is a combination of the "Enable Current Rules" and "Add / Update Entities" buttons.
The "Refresh CRM Items" behavior can be accessed from the "Refresh" button on the "Manage Schema" wizard screen.
The ribbon group name for the "Manage Schema" button has been updated from "Microsoft Dynamics® CRM" to "Schema"
The ribbon bar icons have been updated to match those used elsewhere in irAuthor.
FEATURE    112459 irX for Microsoft Dynamics CRM - No longer require login to environments for test data screen • With ticket 112683, irX for Microsoft Dynamics CRM now saves the user name and encrypted password information along with the configured environments. Therefore, when selecting a Dynamics CRM environment for sourcing test data, you are no longer required to log in and enter credentials.
FEATURE    112480 irX for Microsoft Dynamics CRM - Test Data > Search / Filter • The Test Data selection screens accessed via the "Test" and "Regression Test" buttons on the DYNAMICS irAuthor ribbon now provide a filter text box. Data entered in this filter will apply against all of the columns available in the view. For example, if an Account view has Account Name, Account Address and Account Description columns, and "test" is entered in the filter, it will return records where the word "test" is in the Account Name, Account Address or Account Description.
FEATURE    112517 Improve irAuthor Help topic "Modifying Rule Application Settings" to better explain the Max Cycle Count setting • The irAuthor Help topic on Rule Application Settings has been updated to better explain the Max Cycle Count setting.
FEATURE    112525 irX® for the Salesforce® Platform • The InRule® for the Salesforce® Platform product offering is now available! This offering includes an authoring extension called irX® for the Salesforce® Platform. For rule execution, a Salesforce Integration Framework is available on the support site.
The irX for the Salesforce® Platform authoring extension allows InRule Entities and Fields to be sourced directly from Salesforce and provides direct connection to Salesforce for loading data into irVerify for testing.
FEATURE    112580 Add Assembly info to the irSDK Help file • The irSDK Help file has been updated to include the combination of assemblies needed for common integration scenarios.
FEATURE    112595 InRule for JavaScript - irDistribution - Update to use v2.9 of the Microsoft Azure SDK The irDistribution service now targets version 2.9 of the Microsoft Azure SDK.
FEATURE    112636 InRule for Microsoft Azure  - Add detail to install documentation • The install documentation for both the irCatalog and irServer Rule Execution Service Azure packages has been updated to include an overview and additional detail for each step.
FEATURE    112683 irX for Microsoft Dynamics CRM - Remove "irAuthor > Options > Microsoft Dynamics® CRM Environments" and update Environment Selection screen • Microsoft Dynamics® CRM environments are no longer configured via irAuthor > Options. Environments can be added and edited directly on the screen in which they are selected for use. To add new environments or edit existing environments, click the "Manage" button in the Schema group of the DYNAMICS ribbon in irAuthor. In addition, the user name and password will be stored along with the environment configuration, preventing any re-entry of login credentials.
FEATURE    112703 Update license file validation to work with additional locations for IIS websites • For the irCatalog and irServer Rule Execution Service running in IIS, when the license check is performed, it will now check the bin subdirectory of the install location for the service (e.g. C:\Program Files (x86)\InRule\irServer\RepositoryService\IisService\bin), in addition to the root install directory (e.g. C:\Program Files (x86)\InRule\irServer\RepositoryService\IisService).
FEATURE    112868 InRule for JavaScript - Validation errors are showing up as Unsupported Features Regular validation errors will no longer incorrectly display as unsupported features for the JavaScript engine. In addition, the errors displayed on the irDistribution website will only display a hideable divider when there is more than 1 usage in the Rule Application.
FEATURE    112873 InRule for Microsoft Azure - Add upgrade information to install documentation • Information about how to upgrade to a new version of InRule has been added to the InRule for Microsoft Azure installation documentation.
FEATURE    112878 Implement TLS 1.2 option for irAuthor  • By default, .NET 4.5 only enables SSL3 and TLS v1.0. Some web services forbid those protocols so we must enable TLS v1.2. This is additive; it does not remove the currently set protocols (which may have been changed elsewhere in the AppDomain). This has been added so that extensions (future or otherwise) will not have to manually set this value to get TLS 1.2 support.
FEATURE    112884 Update irVerify and Regression Tester Entity State naming issues • Resolved naming inconsistencies for the JSON, XML and TestScenario options throughout irVerify and the Regression Tester.
FEATURE    112934 InRule for JavaScript - Honor RuntimeErrorPolicy for enhanced DecisionTable execution The ContinueWithNextRule error policy will now correctly continue to the next action in the row, or the next row in the table within the JavaScript engine for Decision Tables with 'Compatibility mode' unchecked.
FEATURE    112984 License check should not fail when InRule License file contains a product component it doesn't understand • This update will allow older versions of InRule to not fail if the license file contains a newly supported product component.
FEATURE    112986 Update Install and irAuthor Help to include valuable information about upgrades and version numbers • The InRule Install Help and InRule Help documents have been updated to include more detail on how to upgrade catalog Rule Applications in the event of a schema version change. In addition, detail about the various InRule version numbers has been included.
FEATURE    112991 InRule for Microsoft Azure - Endpoint Assembly support for runtime package • The irServer Rule Execution Service cloud service package now supports endpoint assemblies. Two configuration entries have been added to point to the Azure storage account and Blob service container where the assemblies have been uploaded. At start-up of the service, the assemblies will be pulled down from that location into the proper executing directory.
FEATURE    113203 InRule for Microsoft Azure - Update install documentation • The InRule for Microsoft Azure install documentation has been updated to include additional detail and screen prints.
FEATURE    113354 Web Catalog Manager - Add "Promote" option for a specific Rule Application revision • The irCatalog Manager Website now supports Rule Application Promotion.
To promote a Rule Application, drill into a specific Rule Application revision and click "Promote".
FEATURE    113486 InRule for JavaScript - Replace Date.parse() with custom Date/DateTime parser for to avoid browser inconsistencies Parsing date strings resolve in either UTC or Localtime depending on the format. All browsers resolve a date-only (2016-09-14) ISO format in UTC, but only Firefox and IE/Edge will resolve it in Localtime if the time component is present (2016-09-14T00:00:00); Chrome still resolves it in UTC. A custom Date/DateTime parser has been implemented to fix these inconsistencies.
The new parser resolves in UTC only if a Z suffix is used in ISO format, or a 0000 local time suffix is used in RFC format.
InRule for JavaScript only supports the following formats for parsing Dates and DateTimes:
-  ISO 8601 (e.g. 2016-03-24T21:33:55.123)
-  RFC 2822 (e.g. Thu, 24 Mar 2016
-  en-US short date-time (e.g. 3/24/2016 9:33:55 PM)21:33:55)
FEATURE    113631 irX for Microsoft Dynamics CRM - Target .NET 4.5.2 and compile against v8.1 of XRM assemblies • The irX for Microsoft Dynamics CRM product has been updated to use version 8.1 of the Microsoft XRM assemblies, which require a minimum of version 4.5.2 of the .NET Framework.
Clients using a different version of the XRM assemblies may still make use of the binding redirects within the irAuthor config file.
FEATURE    113779 Validate Windows Server 2016 support • Product support for Windows Server 2016 has been validated. No code updates were necessary.
FEATURE    113867 irCatalog Manager Website - Manage Labels functionality • Labels can now be assigned (new or existing) and renamed via the irCatalog Manager Website.
FEATURE    113886 irCatalog Manager Website - Delete and Deactivate Rule Applications • Users are now able to delete and deactivate Rule Applications via the irCatalog Manager Website. Deactivated Rule Applications will be displayed in a gray color.
FEATURE    114002 Installer - Remove the "Install Now" option • There is no longer an "Install Now" option in the installer. This was hiding the selected components and leading to confusion. A new install will now always prompt for component selection.
The only component that will default to selected is irAuthor. The irSDK component will no longer be selected by default.
FEATURE    114004 irAuthor Help - Document casting behavior for value comparison • A new section called "Value Comparison" has been added to irAuthor help under irAuthor for Rule Authoring > Rules > Rule Constructs.
FEATURE    114027 Add tooltip to default value field to show expected format for each data type • A culture specific tooltip will now display for the "Default value" field, indicating the expected format for each data type.
FEATURE    114111 irCatalog Manager Website - Display "UTC" Time Zone for Date and DateTime fields • Wherever a date or datetime is displayed, "UTC" has been added to indicate the timezone.
FEATURE    114133 irCatalog Manager Website - Create separate icon for labels and comments • Labels and Comments used to share the same Label icon, which was confusing. These icons are now separate.
FEATURE    114152 irCatalog Manager Website - Add link to get back to Rule Application from specific revision page • A link to the specific Rule Application now exists on the Rule Application's revision page to allow the user to easily navigate back without having to use the browser's Back button and then refresh the page or having to click on the main Rule Applications link and drill down.
FEATURE    114305 Rule Application Report - Add detail for UDFs and Inline Tables • The Rule Application Report will now display the full detail for User Defined Functions and Inline Tables.
FEATURE    114371 Performance Statistics Report enhancements • The Function Compile Time will now be subtracted from the Rule Execution Time.
A legend has been added to the bottom of the report to display the formulas for each statistic.
FEATURE    114372 Publicly expose underlying XML used for Performance Statistics Report via SDK  • The RuleExecutionLog object in irSDK now has a GetXml() method to expose log messages and detailed statistics. 
FEATURE    114409 List Add Collection Member action detail on the Rule Application Report • The Rule Application Report now displays the Initial field values and Entity Collection options for Add Collection Member actions.
FEATURE    114423 List additional detail for Decision Table Actions and Conditions on the Rule Application Report • The Rule Application Report now displays all of the detail for Decision Table Conditions and Actions.
FEATURE    114482 irCatalog Manager Website - Update Labels and Promote buttons based on permissions • The Assign Labels and Promote buttons will be appropriately disabled if the user does not have permissions. Hovering over the disabled button will indicate the permission issue.
FEATURE    114518 Add PPMT and IPMT functions to match Excel • The PPMT and IPMT functions have been added to both the .NET and JavaScript engines. These functions are also available to be defined via Business Language (BL).
FEATURE    114597 Validate support for December 2016 update for Dynamics 365 • Product support for the December 2016 Update for Dynamics 365 (both Online and On-Premises) has been validated. No code updates were necessary.
FEATURE    114626 Add Default Value information to Entity / Fields section of Rule Application Report • A "Default value" column has been added to the Entity / Fields section of the Rule Application Report.
FEATURE    114631 Add detail for Inline Value Lists to Rule Application Report • The Rule Application Report will now display the full detail for Inline Value Lists.
FEATURE    114707 Indicate if a Calculation field is disabled on the Rule Application Report • Disabled Calculation fields will now display on the Rule Application Report with "[Disabled]" text following the Cal name and will also be in a gray color.
FEATURE    114783 Add new code samples to irSDK Help • Three new samples have been added to display various ways of calling the irServer - Rule Execution Service via REST. In addition, the Source Code Examples section has been organized into relevant sub categories.
FEATURE    84311 Display on the Rule Application Report whether fields are flagged as temporary or read only • The field data type of read only or temporary will now be displayed on the Rule Application Report.
FEATURE    95214 Clearly indicate which rules are disabled in the Rule Application Report • Disabled rules will now display on the Rule Application Report with "[Disabled]" text following the rule name and will also be in a gray color.
FEATURE    95675 Add "Save a Copy" option and present Task Dialog when traditional "Save As" option is selected for a catalog Rule Application with unsaved changes • A new File > Save a Copy to file option has been added to the File Menu
This option saves a copy of the Rule Application to the file system
The default location is the last directory  saved to or opened from in irAuthor
The new file name defaults to "<<Original Name>> - Copy"

A warning task dialog is now presented when a traditional Save As (to catalog or file) option is selected for catalog Rule Applications with unsaved changes
The dialog presents the option to Save a Copy to the file system or continue with the traditional Save As selection, including detailed information about the implications of both
FEATURE    SEAL-100 Add the friendly catalog name to the "Maintain Catalog" and "Open from Catalog" screens in irAuthor • If a friendly catalog name exists, it will display in parenthesis before the catalog URI on both the "Maintain Catalog" and the "Open from Catalog" screens in irAuthor.
FEATURE    SEAL-11 For Each Loop • For Each is a new high level rule construct available. Similar to the While rule, For Each will provide a way to iterate through a child collection from the context of the parent. However, unlike the While rule, For Each does not require a counter or index to be declared. This construct is also similar to the Execute Member Rule Set, but it prevents the need to create individual Rule Sets to accomplish the iteration and provides the more natural declaration at the parent level for the child collection.
For Each can be defined as a syntax rule or using Business Language (BL). It is also available within the JavaScript Engine.
NOTE: These changes require a Rule Application XML FeatureVersion increase (to version 104).
FEATURE    SEAL-112 irCatalog Manager Website - Promotion enhancements • A friendly name can now be set for the irCatalog environment you're connected to via the irCatalog Manager Website configuration screen. This sets the name in the irCatalog database.
New irCatalog URIs can be added directly on the promotion screen and will be available for subsequent use. When adding a new URI for promotion, the friendly name defined for that irCatalog environment will be displayed.
FEATURE    SEAL-114 irCatalog Manager Website - Enhancements to checkout status and undo checkout functionality • The Rule Application details page now includes a table with detailed checkout information.
The Rule Application grids now show a comma separated list of users with checkouts, rather than just displaying the user with the Rule Application itself checked out.
The Undo Checkout button will now provide a detailed list of individual checkouts to undo, including an option for "All".
FEATURE    SEAL-115 irAuthor Help updates for Check-Out Operations topic • The irAuthor Help topic for "Check-Out Operations" has been updated to be more clear about what is impacted based on the selections of "Rule Application", "Schema" and "All rule set and element items".
FEATURE    SEAL-116 Update Installer prerequisite check descriptions on failure • The prerequisite failure descriptions have been updated for the following tests:
IIS Version
WCF HTTP Activation
ASP.NET Registration
FEATURE    SEAL-119 InRule for JavaScript - Add support for "StartsWith" function • The StartsWith function is now available for use in the JavaScript Engine. 
FEATURE    SEAL-120 InRule for JavaScript - Add support for "Contains" function • The Contains function is now available for use in the JavaScript Engine. 
FEATURE    SEAL-121 InRule for JavaScript - Add support for "EndsWith" function • The EndsWith function is now available for use in the JavaScript Engine. 
FEATURE    SEAL-144 InRule for JavaScript - Add Xor function support • The Xor function is now available for use in the JavaScript Engine.
FEATURE    SEAL-146 InRule for JavaScript - Add BankRound function support • The BankRound function is now available for use in the JavaScript Engine.
InRule Decimals are represented by JavaScript’s Number data type, which conforms to the IEEE 754 floating point. This is equivalent to the Double data type in .NET. The precision of Decimals in the JavaScript rule engine is therefore different than the .NET rule engine which uses the .NET System.Decimal data type.
The Round and BankRound functionsin JavaScript only support precision up to 15 digits.
FEATURE    SEAL-147 InRule for JavaScript - Add Log function support

• The Log function is now available for use in the JavaScript Engine.
FEATURE    SEAL-148 InRule for JavaScript - Add Mod function support

• The Mod function is now available for use in the JavaScript Engine.
FEATURE    SEAL-152 InRule for JavaScript - Add Random function support

• The Random function is now available for use in the JavaScript Engine.
FEATURE    SEAL-153 InRule for JavaScript - Add Rate function support

• The Rate function is now available for use in the JavaScript Engine.
FEATURE    SEAL-154 InRule for JavaScript - Add Chr function support

• The Chr function is now available for use in the JavaScript Engine.
FEATURE    SEAL-155 InRule for JavaScript - Add IsRegexMatch function support

• The IsRegexMatch function is now available for use in the JavaScript Engine.
FEATURE    SEAL-169 irX for Microsoft Dynamics CRM and irX for the Salesforce Platform - Add a Configure Environments button to the ribbon • A configure button has been added to the DYNAMICS and SALESFORCE ribbons so that environments can be managed outside of the schema update process.
FEATURE    SEAL-170 irX for Microsoft Dynamics CRM, irX for the Salesforce Platform -  "Test" and "Regression Test" buttons should prompt with environment selector dialog • Previous behavior of the "Test" and "Regression Test" buttons of the irX for Microsoft Dynamics CRM and irX for the Salesforce Platform extensions auto-logged the user into the configured default environment. This was not consistent with the rest of the extensions as both the "Manage" and the "Update Regression Test" buttons prompt the user with the environment selector dialog.
For consistency, the environment selector dialog is now presented after clicking the "Test" and "Regression Test" buttons. The environment selected will display in the drop down on the test data page. From there, the user can continue to use the drop down to change environments within that screen.
FEATURE    SEAL-179 irAuthor improvements for irCatalog friendly names • The irAuthor Recents list and Status bar will now only show the irCatalog friendly name (if it exists). In this case, the full URI will be available in a tooltip when hovering over the friendly name.
FEATURE    SEAL-18 irCatalog Manager Website - Provide Catalog Repair utility • The Catalog Repair utility is now available in the irCatalog Manager Website.
FEATURE    SEAL-182 irAuthor Help updates for SQL Query and Execute SQL Query Action topics • irAuthor Help has been updated with information related to database collation and case sensitivity. In addition, a section has been added to show how null parameter values will be handled by data type.
FEATURE    SEAL-183 Automated Install shall support use of grace period • The automated install will now support the use of the grace period. If keys do not exist in the response file, but the grace period has not yet expired, the automated install will now succeed.
FEATURE    SEAL-20 irCatalog Manager Website - Provide Run Diagnostics utility • The Run Diagnostics utility is now available in the irCatalog Manager Website.
FEATURE    SEAL-200 Difference Report - irCatalog Rule Application drop downs should be in alpha order • The irCatalog Rule Application drop downs for the Difference Report dialog will now be sorted in alphabetical order.
FEATURE    SEAL-21 irCatalog Manager Website - Provide "Upgrade" utility • The Upgrade utility is now available in the irCatalog Manager Website. The progress of the upgrade will now be provided to indicate status.
A public method "GetUpgradeStatus()" has been added to the Catalog API which will return information about if an upgrade is in progress and the details about what step is currently being executed.
FEATURE    SEAL-212 irCatalog Manager Website - Edit Config and Run Diagnostics options should always be available • A gear icon has been added to the navigation menu. From here, Configuration and Diagnostics can always be accessed. These buttons and information have been removed from the Overview page.
FEATURE    SEAL-218 Provide read-only view for User Defined Functions • UDFs can now be viewed fully in a read only view when checked in.
FEATURE    SEAL-219 Provide read-only view for Data Elements • All data elements (Value Lists, Inline Tables, etc.) can now be viewed fully in a read only view when checked in.
FEATURE    SEAL-220 Provide read-only view for Endpoints • Endpoint details can now be viewed fully in a read only view when checked in.
FEATURE    SEAL-221 Provide read-only view for Schemas • Schema details can now be viewed fully in a read only view when checked in.
FEATURE    SEAL-223 irAuthor Help - Updates to instructions on Complex Collections • irAuthor Help has been updated to include instructions on how to add fields to Complex Collections.
FEATURE    SEAL-224 InRule for Microsoft Azure install documentation updates regarding SSL cert • The InRule for Microsoft Azure install documentation has been updated to note NOT to update the certificate name in the config, only the thumbprint value.
FEATURE    SEAL-228 irCatalog Manager Website -  Move user to progress page after 30 seconds of upgrade • Previously, the user was not directed to the Upgrade Progress page unless the upgrade was taking longer than the set timeout. This was undesirable when the timeout was increased from the default of 30 seconds. Therefore, if the upgrade process takes longer than 30 seconds, the user will be redirected to the Upgrade Progress page, regardless of the timeout value.
FEATURE    SEAL-236 InRule for JavaScript - Add support for the Safe function The Safe function is now available for use in the JavaScript Engine.
FEATURE    SEAL-25 Provide a read-only view for checked-in syntax rules and actions • Checked in syntax rules and actions can now be viewed in their entirety without needing to check out the rule construct. The checked-in rules are still not editable. They are now in a read only mode rather than disabled.
The rules impacted by this change are:
Calculation Fields
Clear Collection Action
Copy Collection Action
Copy Entity Action
Map Data Action
Remove Collection Member Action
Set Value Action
Sort Collection Action
If/Then Syntax Rule
Execute Member Rule Set
Syntax While Rule
FEATURE    SEAL-27 Allow alias names for catalogs in irAuthor • When logging in to the catalog via irAuthor, you can now manage your connections with a friendly name and alternate credentials. Passwords are encrypted and retained for reuse.
FEATURE    SEAL-282 irCatalog Manager Website - LDAP / Active Directory Support • The irCatalog Manager Website now supports when the underlying irCatalog Service is configured using LDAP / Active Directory authentication. This includes the ability to manage Active Directory Users and Groups.
FEATURE    SEAL-303 Validate support for .NET 4.7 • Product support for .NET 4.7 has been validated. No code updates were necessary.
FEATURE    SEAL-31 Add / update necessary installer prerequisite checks for the irCatalog Manager Website • The installation of the irCatalog Manager Website now has additional prerequisite tests to ensure successful operation. Specifically, these prerequisites must be met:
Ensure WCF HTTP Activation is enabled
IIS Web Application Path must be unique and not used by another installation.
Catalog Manager Website's IIS Application Pool must have read access to working directory.
Internet Information Services must have Static Content enabled.
FEATURE    SEAL-322 irScript documentation needs clarification on difference between Entity Collections and ScriptCollections

• The irScript documentation has been updated to clarify which functions are available for ScriptCollections vs. Entity Collections.
FEATURE    SEAL-328 InRule for JavaScript - Provide a sample for calling the irDistribution service from JavaScript

• A JavaScript sample for calling the irDistribution service has been added to the documentation.
FEATURE    SEAL-332 Install Help - Add details about how to uninstall a side by side installation

• Information has been added to the Install Guide about uninstalling a side by side installation of InRule.
FEATURE    SEAL-345 Add copy capability to Execute JavaScript Function action

• The sample code for the Execute JavaScript Function can now be copied to the clipboard.
FEATURE    SEAL-35 irAuthor Help - Add information about Activating and Deactivating Rule Applications • Additional detail has been added about the implications of activating and deactivating catalog Rule Applications.
FEATURE    SEAL-36 Update install guide with licensing and other relevant content

• The installation guide has been updated to include more information related to activating InRule, in addition to other typical issues installing the product.
FEATURE    SEAL-375 Expression Editor default spacing should be better balanced

• The default spacing has been updated to include more room for the Functions and Schema lists and less whitespace for the expression builder.
FEATURE    SEAL-38 Show catalog information in the irAuthor status bar • The irCatalog URI of the currently connected catalog will now display in the irAuthor status bar.
FEATURE    SEAL-385 Move code samples from Installer to GitHub • The samples previously included in the samples directory by the installer have been moved to GitHub. irAuthor links and documentation have been updated to point to the GitHub location for access. In addition developer samples and authoring samples from the Support Site have also been moved to GitHub. The Support Site now has a link to the latest samples repository.
FEATURE    SEAL-399 Ability to bulk check out all Rule Sets within a Rule Set Folder • The option to check out is now available for a Rule Set Folder. This option will check out all of the Rule Sets within that folder.
FEATURE    SEAL-409 In Rule Application Report, show Rule Set run and fire mode information • The run and fire modes of each Rule Set will now be displayed in the Rule Application Report.
FEATURE    SEAL-41 irCatalog Manager Website - Provide Rule Application > Undo Checkout functionality • Users can now perform an "Undo Checkout" action on Rule Applications within the irCatalog Manager Website.
FEATURE    SEAL-415 Update Dynamics and Salesforce progress dialogs to remove the "Current operation:" text • The "Current operation:" text has been removed from the irX for Microsoft Dynamics CRM and irX for the Salesforce Platform progress dialogs for consistency.
FEATURE    SEAL-416 Double click of catalog name should select environment for connection • The Open from Catalog dialog and the Manage Schema and Configure Environment dialogs for both the irX for Microsoft Dynamics CRM and irX for the Salesforce Platform extensions have been updated. In addition to the "Use This" button, double click of the name will now select that item for connection. Single click will no longer expand the item. Expand and collapse is only available via the expand/collapse arrow button.
FEATURE    SEAL-419 Open from Catalog dialog should allow resize of window • The Open from Catalog dialog can now be resized by dragging the lower right corner of the window.
FEATURE    SEAL-453 Add Install Guide topic about changing configuration from HTTP to HTTPS • A topic has been added to the Install Guide about updating the irCatalog and irServer Rule Execution Services from HTTP to HTTPS.
FEATURE    SEAL-468 irX for JavaScript - Rule Set Run Modes should be based on Target Platform • When "JavaScript" or “All Platforms” is selected for the Target Platform of a Rule Application, the unsupported Run Modes for Rule Sets will be disabled.
FEATURE    SEAL-492 irCatalog Manager Website - Allow deletion of first revision for Rule Applications with more than 1 revision • The API only supports deleting the latest revision of a Rule Application or all previous revisions. Before this enhancement, if a Rule Application had more than one revision, deleting the first revision could only be accomplished by navigating to revision two and selecting to delete "All Previous Revisions".  The irCatalog Manager Website has been enhanced to allow the first revision to be deleted from that revision itself.
FEATURE    SEAL-50 Update Copyright dates for 2017 • All copyright dates have been updated to 2017.
FEATURE    SEAL-511 Update InRule for the Salesforce Platform documentation about needing an environment that allows API access • The irX for the Salesforce Platform Help file and the InRule for the Salesforce Platform Integration Framework Guide have been updated to indicate that not all Salesforce editions support API access. For the InRule for the Salesforce Platform product to work, a Salesforce edition that supports API access is required.
FEATURE    SEAL-521 Add UDF examples to sample UDF Examples Rule Application and irAuthor Help file • 3 UDF examples were added to the sample UDF Examples Rule Application and to the irAuthor Help File:
Executing an Explicit Entity Rule Set with parameters
Executing an Independent Rule Set
Executing an Independent Rule Set with parameters
FEATURE    SEAL-541 Update Rule Application Cache Depth default setting from 5 to 25 • The default setting for the Rule Application Cache Depth has been updated from 5 to 25 Rule Applications.
FEATURE    SEAL-542 Add option via irSDK to clear the data cache • The data cache (i.e. results from SQL Queries, Database Tables, REST calls, etc.) can now be cleared via irSDK by calling RuleSession.DataQueryCache.Clear().  This clears all data cache across all Rule Applications in the app domain.
FEATURE    SEAL-544 Remove Run Diagnostics validation check from Check Out and Undo Checkout actions • The Run Diagnostics validation will no longer run on Check Out and Undo Checkout operations. This validation was not necessary in these scenarios. In large irCatalog instances, this should have a noticeable performance improvement.
FEATURE    SEAL-565 Remove the "/Action" from the "Execute Rule Set/Action" in the UI and Menu • UI and corresponding documentation have been cleaned up to remove ambiguity.
FEATURE    SEAL-567 Validate support for Microsoft Dynamics v9.0 • irX for Microsoft Dynamics CRM and the InRule for Microsoft Dynamics Integration Framework have been tested against a v9.0 instance. All existing functionality functions without error using a v9.0 instance of Microsoft Dynamics.
NOTE: The new Mult-select Option Set field type available in v9.0 is not currently available for use in InRule for Microsoft Dynamics CRM.
FEATURE    SEAL-568 Updates to installation prerequisites • The recommended RAM has been updated to 8 GB and a 64 bit processor has been recommended.
FEATURE    SEAL-596 Updates to UDF Examples Sample Rule Application • Comments for the CallExternalFunction UDF in the sample Rule Application have been updated to note the new location of the InvoiceObjects.dll. In addition, a sample for activating Rule Sets has been added to both the sample Rule Application and irAuthor Help.
FEATURE    SEAL-611 Update Install Help for "From HTTP to HTTPS" topic • Information about necessary updates to the irCatalog Manager Website web.config file has been added to the Installation help's "From HTTP to HTTPs" topic.
FEATURE    SEAL-628 Review Windows Containers pull request in Samples repository • A set of samples for Windows Containers has been added to the samples.inrule.com public repository.
FEATURE    SEAL-638 Add header to installer's "irCatalog Database: SQL Server/Oracle Configuration" screen • A title has been added to the "irCatalog Database: SQL Server (or Oracle) Configuration" screen. The title better explains the purpose of the screen and the configuration options.
FEATURE    SEAL-646 Activation Utility - Allow valid license keys to be reactivated • The Activation Utility has been updated to support the ability to reactivate activated licenses. This option will perform an activation request against the key and if any information has been updated in the InRule Licensing Server (e.g. expiration date), the updated information will be refreshed on the client machine. This reactivation process supports both connected and disconnected workflows. The previous "Activate Offline" and "Deactivate Offline" checkboxes have been combined into a single "I don't have an internet connection" checkbox that now applies to the activation, deactivation and reactivation actions.
The ability to copy a license key has also been added to the context menu of the Activated Licenses grid.
FEATURE    SEAL-647 Activation Utility - Allow expired licenses keys to be visible and reactivated • Expired license keys will now be visible in the Activation Utility and can be reactivated (e.g. to update an extended expiration date) or deactivated.
FEATURE    SEAL-648 InRule for Microsoft Dynamics CRM - Added support for TLS 1.2 to the InRule for Microsoft Dynamics 365 TLS 1.2 support has been added to the InRule.Crm.RuleHelper
FEATURE    SEAL-674 Change minimum .NET Framework requirement from .NET 4.5 to .NET 4.6.1 • InRule is built on .NET 4.6.1. Existing compiled assets used as endpoints for the purpose of importing entities or calling methods should continue to work. Azure Cloud Service packages now reference OS Family 5.
FEATURE    SEAL-687 irX for Microsoft Dynamics CRM - Add Capability to Exclude Inactive Records • A new "Exclude Inactive" toggle button has been added to the Dynamics ribbon "Item" section beneath Auto Save. The button is enabled for toggling when a Collection or Relationship is selected in the Entity tree. When enabled, the toggle state will default to "off".
The buttons sets a context-specific Rule Application attribute (in the same manner as Auto Load and Auto Save) that impacts what records are loaded into irVerify when testing.
FEATURE    SEAL-702 InRule for Microsoft Dynamics 365 - Allow integration framework settings to be configured in Dynamics • Configuration of InRule for Microsoft Dynamics CRM solution components improvements:
Solution configuration page added to allow users to configure InRule for Microsoft Dynamics CRM without the need to use the plugin registration tool
Expanded configuration options for controlling client-side behavior of the "Run Rules" button
Manage connection settings and credentials for the Azure Service Bus Relay connection to the InRule for Microsoft Dynamics Rule Execution Service from within Dynamics
Add additional configuration profiles to control the behavior of rule execution. Ex: executing rules from the UI versus running rules against an imported batch of records
FEATURE    SEAL-704 InRule for Microsoft Dynamics 365 - Add support for transient fault tolerance to plugin • Added logic to plugin to detect selected types of service exceptions that are potentially transient in nature. Implemented configurable retry behavior in the plugin:
• Number of times plugin will attempt to retry the network operation
• Wait interval, specified in milliseconds, that the plugin should wait before attempting to retry the operation. Time spent waiting contributes to the system-enforced timeout interval
FEATURE    SEAL-706 InRule for Microsoft Dynamics 365 - Add Capability to Exclude Inactive Records • The InRule for Microsoft Dynamics 365 will now reference the attribute defined for each Collection and Relationship saved in the Rule Application to know whether to exclude inactive records in the same manner as the irX authoring extension.
FEATURE    SEAL-71 Add a string overload to the GetRulesMatchingCategory method • The GetRulesMatchingCategory method now accepts a Category Name string. e.g. GetRulesMatchingCategory("MyCategory")
FEATURE    SEAL-72 Add method to get all rules without any categories applied • A new method is now available "GetRulesWithoutCategory". This method returns all rules that do not have any categories assigned.
FEATURE    SEAL-740 InRule for the Salesforce Platform Integration Framework Guide updates • Closing tags have been added to config samples in the documentation.
FEATURE    SEAL-752 InRule for Microsoft Dynamics 365 Technical Reference updates • The title has been updated from "InRule for Microsoft Dynamics 365 Guide" to "InRule for Microsoft Dynamics 365 Technical Reference" and the code sample's property name was corrected from entityName to entityTypeName in the "Add JavaScript to Call the InRule Sample JavaScript Functions" section.
FEATURE    SEAL-770 Windows Container Image Sample updates • There were three fixes to the Windows Container Image sample in the samples repository:
The license file location was correct (runs in grace period mode otherwise)
The error logged during irCatalog manager startup was resolved
The tagging of the base server image as 'latest' was moved to be before the build of dependent images
FEATURE    SEAL-82 irAuthor Help update for Maintain Catalog view > Description field • Detail has been added to irAuthor Help to describe all of the columns displayed on the irAuthor Maintain Catalog View.
FEATURE    SEAL-821 InRule for Microsoft Dynamics 365 - Documentation updates on new configuration settings in Dynamics • The InRule for Microsoft Dynamics 365 Technical Reference document now contains an explanation of each configuration setting. The InRule for Microsoft Dynamics 365 Deployment Guide has been updated to reflect the new changes to installation and configuration. 
FEATURE    SEAL-85 Provide read-only view for Vocabulary & Classification Templates • Vocabulary templates can now be opened in a read only view when checked in.
FEATURE    SEAL-86 Add summary link in irSDK Help for SOAP example • A summary link for "Calling the irServer SOAP EndPoint using a Service Reference" on the "Runtime API Examples" and the "Calling the Rules Engine as a Service" topics has been added.
FEATURE    SEAL-881 Add email address on RuleUser for irCatalog • This will require a DB Schema upgrade for IrCatalog to support the new Email Address field
FEATURE    SEAL-891 irCatalog Manager Website - add email address to user record • Added ability to record users' email addresses in irCatalog Manager Website which will be stored in the User table in catalog database. Future functionality will make use of this field.
FEATURE    SEAL-96 Add the friendly catalog name to the "Recent" list in irAuthor for catalog Rule Applications • If a friendly catalog name exists, it will display in parenthesis before the catalog URI in the irAuthor "Recent" list.
FEATURE    SEAL-967 InRule for Microsoft Azure - Update upgrade instructions for to indicate necessary actions for .NET 4.6.1 • The InRule for Microsoft Azure installation documentation has been updated to detail the necessary steps to update the configuration settings for InRule’s .NET 4.6.1 requirement.
FEATURE    SEAL-97 Add the friendly catalog name to the irAuthor status bar • If a friendly catalog name exists, it will display in parenthesis before the catalog URI in the irAuthor status window.
FEATURE    SEAL-999 Upgrade Netwonsoft.Json version • The Newtonsoft.Json assembly version has been upgraded from version 8.0.3 to version 10.0.3.
ISSUE      100403 The irAuthor Window title does not always reflect the changes to the Rule Application name in the Settings pane • The irAuthor window title will now properly display the Rule Application name from the Settings page in all scenarios.
ISSUE      103981 Difference Report is listing duplicate rules • This issue has been corrected to ensure that each modified rule only displays once on the Difference Report.
ISSUE      104377 Category Unique Name validation does not trim the field, but results later in Rule Application validation error • The irAuthor "Categorize > Manage Categories..." screen will now trim the category names before validating uniqueness.
ISSUE      104387 Thread safety issue during execution of multiple threads

• When a file system or catalog Rule Application is updated, a recompilation will occur for any new thread creating a RuleSession, but any thread accessing an existing RuleSession instance will now be unaffected.
ISSUE      105313 Save As to a different catalog server throws error, succeeds anyway • When a new Rule Application is successfully saved to a catalog, there is no longer an error message displayed showing "Rule application does not exist in the catalog".
This issue also included updated documentation on the "Log Out" button on irAuthor's Catalog tab.
ISSUE      105930 Rule Engine Log - Displays all decision table rows even after "true" row with "Exit at First True" selected • The new enhanced decision table (with compatibility mode unchecked) no longer logs the “False” rows after the “True” row when “Exit at First True” is selected. However, these values can continue to be interrogated via the SDK regardless of the compatibility mode.
ISSUE      106093 irVerify maps UI tree expand/collapse to keypad symbols when focus is on an input element • A similar fix was made with 113440 in v5.0.14, however, that fix only applied to Date fields. This fix ensures that the "-" key on the numeric keypad does not collapse other field types in irVerify, with the exception of ComboBox fields (tied to value lists).
ISSUE      106408 Unhandled exception when adding a category with an apostrophe • Any invalid characters that are entered will not be automatically removed, but a pop-up error will display indicating that there are invalid characters. When user clicks OK on error pop-up, they will be brought back to the category grid control and will need to remove the invalid characters before saving.
ISSUE      106411 Catalog SDK: Calling CatalogConnection.ApplyLabel with a new label throws exception • When calling ApplyLabel for a label that does not yet exist, the label will now be created and then applied, without error.
ISSUE      107100 irAuthor Classification built for a field referenced in an Entity field disappears • This error no longer occurs. Classifications built for fields on an entity field are now properly saved and displayed.
ISSUE      107268 Users can have multiple instances of the Activation Utility open at once • This has been fixed to ensure that only one instance of the Activation Utility can be opened at a time.
ISSUE      107268 Users can have multiple instances of the Activation Utility open at once • This has been fixed to ensure that only one instance of the Activation Utility can be opened at a time.
ISSUE      107528 When configuring an Oracle database connection endpoint in irAuthor, if it fails to connect, it does not show any details about the error. • Connection error details are now properly displayed when configuring an Oracle database connection endpoint.
ISSUE      107816 Stack Overflow Exception during rule execution of rule application with large decision table • The execution performance of large decision tables has been improved by optimizing various functions. After the implementation of these optimizations, the likelihood of stack overflow conditions occurring have been significantly reduced.
ISSUE      107988 Rule execution errors in event log are not showing the name of the Rule Application • Rule execution errors will now display the name of the Rule Application.
ISSUE      108002 Function compile time should be excluded from the rule execution timeout • The rule execution timeout setting will now only apply to the actual execution time, which does not include the function compile time.
ISSUE      108563 The “Use first matching row” setting is used at runtime both when returning results into a field or a collection, however, the setting is only shown in the Settings dialog when returning results into a field • This setting is now properly displayed on the screen for return types of both collection and field.
ISSUE      108758 Error thrown and test suite file deleted when saving modified test suite • The error is no longer thrown. Changes to the test suite are properly preserved.
ISSUE      108824 irServer Rule Execution Service – Parameters ignored for XML payload via REST • The inner tag for Parameters was incorrectly expected to be “<ExecuteRuleSetRequest>” rather than “<Parameter>”. This has been resolved. An example payload for an Explicit Rule Set with parameters is:
<ExecuteRuleSetRequest xmlns="http://www.inrule.com/XmlSchema/Schema">
<RuleApp>
    <Password>CatPassword</Password>
    <RepositoryRuleAppRevisionSpec>
          <RuleApplicationName>RuleApp1</RuleApplicationName>
    </RepositoryRuleAppRevisionSpec>    <RepositoryServiceUri>http://localhost/InRuleCatalogService/service.svc</RepositoryServiceUri>
    <UserName>CatUsername</UserName>
</RuleApp>
<EntityState>&lt;?xml version='1.0' encoding='utf-8'?&gt;&lt;Entity1 &gt;&lt;Field1&gt;1&lt;/Field1&gt;&lt;/Entity1&gt;</EntityState>
<EntityName>Entity1</EntityName>
      <Parameters>
          <Parameter>
                 <Name>Parameter1</Name>
                  <Value>Value1</Value>
           </Parameter>
           <Parameter>
                  <Name>Parameter2</Name>
                   <Value>Value2</Value>
            </Parameter>
      </Parameters>
<RuleSetName>Ruleset1</RuleSetName>
</ExecuteRuleSetRequest>
ISSUE      108885 REST Operation dropdown is empty in the Execute REST Service Vocabulary template when REST Operations are inside Data Folders • REST Operations inside Data Folders are now available in the drop down for the Execute REST Service Vocabulary template.
ISSUE      109044 irCatalog Manager - Showing cryptic rule application version error messages • A more user-friendly error is now displayed to explain the discrepancy between irCatalog Manager and irCatalog's FeatureVersion.
ISSUE      109051 Web-based irCatalog Manager - Unhandled exception with cryptic rule application version error message • This has been resolved by handling this error and presenting a more user-friendly message to explain the discrepancy between the Web-based irCatalog Manager and irCatalog's FeatureVersion.
ISSUE      109172 InRule for JavaScript - JavaScript structure is invalid and prevents loading rule engine when 'use strict' applied to the root object The JavaScript rule engine now conforms to ECMAScript 5 'use strict' mode.
ISSUE      109429 Difference Report swaps information when In Memory or Catalog Rule Applications are compared • The Difference Report will now correctly display the From / To detail, regardless of the types of Rule Application selected for comparison.
ISSUE      109532 Sharing appears to get re-enabled in downstream catalogs after promotion if sharing was previously enabled and then turned off • This problem was caused by the rules around re-using GUIDs for Schema defs when promoting Rule Applications from one catalog database to another.
To resolve this problem, the following rules were put in place. When promoting a Rule Application into a target catalog, the schema GUID from the source catalog shall be used only if:
That schema GUID does NOT exist in the target catalog (NOTE: In this case, if the shareable flag was true in the source catalog, it becomes false in the target catalog)
That schema GUID exists in the target catalog, is not set to shareable and is only in use by the same Rule Application being promoted from the source.
That schema GUID exists in the target catalog, is set to shareable and is currently in use by at least one Rule Application's latest revision.
If the above criteria are not met, the Schema def shall be re-GUIDed in the target catalog.
ISSUE      109549 The irServer Rule Execution Service via REST fails to process the XML request when that request contains an endpoint override for DB connection string • This was an error with the documentation sample. The sample documentation has been updated to reflect the proper code necessary to override a DB connection string.
ISSUE      109593 irX for Javascript -  Packaging unsupported feature errors are not "clickable"

• Double clicking on JavaScript validation and packaging errors will now bring the user to the associated location in the Rule Application.
ISSUE      109688 Installer IIS Validation tests need link to WCF Configuration Setup doc on the InRule Support Site • The installer test failure detail now links to additional documentation on the InRule Support Site.
ISSUE      109719 Casting exception assigning members to collection derived from a List of enums in an imported .NET assembly • This error has been resolved so that members may be assigned to a collection from a list of enums in a .NET assembly.
ISSUE      109793 InRule for JavaScript - Implicit casting of Decimal to Integer produces wrong results when input exceeds 8 digits This issue has been corrected so that decimal to integer casting produces the correct results for all input sizes.
ISSUE      109803 InRule for JavaScript - Update file name saved to Azure storage Updates have been made to the JavaScript file name scheme.
ISSUE      109830 InRule for JavaScript - Internal Server error when unsupported v4.5 rule app packaged This has been resolved by ensuring the rule application is upgraded prior to processing and the detailed list of unsupported features are displayed, rather than an Internal Server error.
ISSUE      109872 Saving ruleappx files does not preserve case of the file name • The file name case is now properly preserved when saving ruleappx file types.
ISSUE      109881 Upgrade to 5.0 does not persist version 4.x isolated storage settings

• When upgrading to version 5.0.3, the v4.x version's isolated storage settings will now be preserved. Isolated storage is where irAuthor, irX-*, irVerify and irCatalog Manager settings are stored. NOTE: This will only be a one-time migration. In addition, as a part of this fix, the Authoring SDK settingsStorageService.OpenFile has been marked "Obsolete Breaking".
ISSUE      109917 The Execute REST Service Action opens a new HTTP/S socket for every call to the service endpoint • The HTTP client instances are now cached by Endpoint information, significantly reducing the number of new sockets.
ISSUE      109953 Exception thrown when using irAuthor to delete a rule that is not already checked out

• This error was being thrown after answering "Yes" to the prompt to check out the rule set containing the selected rule for deletion. This exception no longer occurs and the delete happens without error.
ISSUE      110007 If caching is enabled for a REST Operation, the Execute Rest Service Action does not retry after an error until the cache duration expires • In the case of an exception, the cache is now properly cleared, so it will try again and pull the new information without requiring to wait the duration of the cache interval.
ISSUE      110010 The REST Operation does not handle trailing slashes when building URL paths against a REST endpoint • The REST Operation no longer requires that the rule author add these slashes. The application now handles removing duplicate slashes or inserting slashes when necessary.
ISSUE      110066 irVerify periodically locks up for 30 seconds or more when typing values into an entity field on a machine with a touch screen

• This performance issue was incurred when using a very large entity structure along with a touch screen enabled machine. This issue has been resolved and there is no longer a performance issue in irVerify.
ISSUE      110091 The Execute Member Rule Set Vocabulary template is not showing valid rule sets • The Execute Member Rule Set Vocabulary template will now show the correct "Target rule set" options based on the selected "Target collection".
ISSUE      110151 InRule for JavaScript - Help File Updates • Various updates have been made to the code samples in the InRule for JavaScript help file.
ISSUE      110216 Integration help file is missing code sample • The irSDK Help > Source Code Examples > Catalog API Examples > Creating a RuleCatalogConnection topic's sample for "Creating a Catalog connection with credentials" was missing. This sample has been added to the help file.
ISSUE      110245 Product documentation does not provide instructions on completing a catalog installation where manual database creation is selected • The InRule Install Help has been updated to include instructions on how to find and execute the database scripts after selecting the "Manual install later" option for the irCatalog database.
ISSUE      110251 InRule for JavaScript - Session.createEntity() infinitely recurses when binding to a state that has circular references This issue was resolved by ensuring that default values for primitive fields on entity fields are properly set.
ISSUE      110349 irSDK Implementation Guide Diagram typo

• The Application Architectures > Rule Services > Running Rules With a Service Oriented Architecture diagram misspelled "business" as "busines". This has been corrected.
ISSUE      110360 irVerify Regression Tester crashes with threading error when Test Suite re-opened in same irAuthor session • The error "Object reference not set to an instance of an object. The calling thread cannot access this object because a different thread owns it." was being thrown when a test suite was opened, closed and then reopened within the same irAuthor session. This issue has been resolved and will no longer occur.
ISSUE      110370 InRule for JavaScript - Rule Application returns 'Internal Error' during packaging of GetMemberByIndex function This error was due to a casting issue during the packaging of the GetMemberByIndex function. This has been corrected and now that function will be packaged successfully.
ISSUE      110456 RuleApplicationCache "Object reference not set to an instance of an object" when compiling updated Rule Application files for ruleapps already in cache

• We believe this error was resolved by a defect fixed in 5.0.2 (104387 - Thread safety issue during execution of multiple threads). However, some additional refactoring was performed in this code to prevent this null reference exception.
ISSUE      110482 InRule for JavaScript - Rule Application throws 'inrule is undefined' error message at runtime This error occurred due to invalid JavaScript being created in packaging. The Rule Application had an InLine Table with data containing a single quote. This character was not being properly escaped. All relevant special characters are now being properly escaped to resolve this issue.
ISSUE      110571 InRule for JavaScript - Rule Application throws an exception at runtime This error was resolved by using case sensitive mapping in the Execute SQL Query action.
ISSUE      110624 InRule for JavaScript - Async mechanism causing rules/actions to fire multiple times even when not executing async logic This error was that double nested While Rule/Execute RuleSet/Execute Member RuleSet actions were sometimes causing sibling rules to execute more than once. This has been resolved so that now these rules will only execute once.
ISSUE      110643 InRule for JavaScript - Inline Tables are not accessible client side because dataManager object is missing The dataManager object is now being packaged with the JavaScript output so that InLine table and InLine Value List data can be accessed via the JavaScript SDK.
ISSUE      110649 Spelling error in InRule error message - "Databse" should be "Database" • The rule execution error message "Unable to execute Databse SQL query '<<queryname>>': Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding." has been corrected to "Unable to execute Database SQL query '<<queryname>>': Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding."
ISSUE      110650 irSDK Help > Implementation Guide > Cold Start Mitigation section typo

• The irSDK Help file > Implementation Guide > Cold Start Mitigation section had a typo in 2 code samples and a code comment, misspelling "application" as "applicaiton". This has been corrected.
ISSUE      110812 InRule for JavaScript - Packaging error DataRow type 'Guid' not supported Inline table column types of Guid are now supported.
ISSUE      110839 InRule for JavaScript - runtimeErrors and hasErrors arrays on the exceptionLog are incorrectly obfuscated The runtimeErrors and hasErrors arrays on the executionLog are no longer obfuscated.
ISSUE      110848 InRule for JavaScript - Packaging error DataRow type 'DBNull' not supported Inline table column types of DBNull are now supported.
ISSUE      110853 InRule for JavaScript - Packaging error when SQL where clause field names contain restricted words This error was occurring when field names in SQL Query where clauses contained restricted words such as 'is' or 'not'. This has been corrected and now these queries will package without error.
ISSUE      110858 InRule for JavaScript - Packaging error - SQL Query auto mapping is not supported but is not throwing unsupported error This error was occurring due to auto-mapping of fields in the Execute SQL Query action. This will now be properly displayed as an unsupported feature error. The InRule for JavaScript help documentation has also been updated to explicitly state that this is unsupported.
ISSUE      110878 RuleApplicationDef.GetRulesMatchingCategory returns duplicate results

• Duplicate results will no longer be returned by RuleApplicationDef.GetRulesMatchingCategory .
ISSUE      111066 InRule for JavaScript - Callback supplied to applyRules() is executed more than once when Runtime Error encountered Runtime errors occurring during CopyCollection action, ExecuteMemberRuleSet action, AddCollectionMember action, SortCollection action, or ExecuteRuleSet action could cause user-supplied callback provided to session.applyRules() to execute multiple times. This has been resolved and the callback will only execute once.
ISSUE      111158 irAuthor Splash screen has white line at the top • This line has been removed from the irAuthor splash screen.
ISSUE      111158 irAuthor Splash screen has white line at the top • This line has been removed from the irAuthor splash screen.
ISSUE      111197 InRule for JavaScript - Rule application with If function that is missing the third parameter does not cause validation error and throws Internal Error when submitting to irDistribution The If function used without the third parameter is a valid use of the function in InRule. At runtime, if the condition evaluates to false, it will return the default value for the returnTrueValue’s datatype.  This issue was caused by irDistribution not handling the If function without the third parameter.  This has been fixed and irDistribution will now properly package Rule Applications containing If functions without the third parameter.
ISSUE      111198 InRule for JavaScript - Rule execution halts without invoking callback passed to applyRules() if synchronous ExecuteRuleSet action occurs after an asynchronous ExecuteJavaScriptFunction action Execute RuleSet actions occurring after an asynchronous ExecuteJavaScriptFunction action would result in rule execution halting prematurely and not calling the callback function provided to applyRules().
ISSUE      111213 InRule for JavaScript - Callback passed to applyRules() is not called when a Calculation Field encounters a Runtime Error If Error Handling Policy was set to 'Continue With Next Rule' or 'Continue With Next RuleSet', any error that occurred during the evaluation of a Calculated Field would halt all rule execution, instead of continuing to next Calculated Field or RuleSet.
ISSUE      111291 Entity JSON loading error message refers to problem with Entity XML • This error no longer incorrectly refers to Entity XML. In addition, more detail about the specific parsing error has been added.
ISSUE      111291 Entity JSON loading error message refers to problem with Entity XML • This error no longer incorrectly refers to Entity XML. In addition, more detail about the specific parsing error has been added.
ISSUE      111292 When embedding the database editor in a WinForm app the ellipses button does not open the dialog • This has been corrected so that clicking the ellipses button of an embedded database editor opens the dialog as expected.
ISSUE      111292 When embedding the database editor in a WinForm app the ellipses button does not open the dialog • This has been corrected so that clicking the ellipses button of an embedded database editor opens the dialog as expected.
ISSUE      111588 There is currently no way to override Web Service End Point bindings • When a Rule Application attempts to execute a SOAP Web Service at runtime, it may connect using .NET's WCF BasicHttpBinding or WSHttpBinding. The MaxReceivedMessageSize property of the binding may now be overridden either through irSDK or an irServer Rule Execution Service request.
ISSUE      111895 InRule for JavaScript - Runtime error when using declared variables This error has been corrected and will no longer occur when using variables in JavaScript.
ISSUE      111906 InRule for JavaScript - Runtime error trying to access Inline Tables and Value Lists data The data from Inline Tables and Value Lists are now accessible without error via the JavaScript SDK.
ISSUE      111947 Insert Shared Element "Advanced" dropdown appears permanently disabled, not documented • The drop down in the Advanced section of the Insert Shared Element search was not wired up and therefore has been removed.
ISSUE      111949 "Cannot access _parentContainer" error during rule execution • This "Cannot access _parentContainer" error was caused by a combination of name collision and an indirect path to finding the parent context. The solution is that if the parent can be found via both Parent Context and Outer Context, Outer Context will be the preferred path.
ISSUE      112077 irSDK Help - The "Data Query Cache" page shows up as "Topic Title" when searching • The irSDK Help File > Application Integration with InRule > Configuration Files > InRule Runtime Config File Settings > Data Query Cache topic's title has been corrected from "Topic Title" to "Data Query Cache".
ISSUE      112096 Topic titles missing from various help topics • All of the help files have been updated to ensure no topic titles have the default "Topic Title" verbiage.
ISSUE      112124 irAuthor Help - Strange wording for Vocabulary Expression Templates • The "Expression" field definition for the Expression Vocabulary template has been changed from "The action to be performed by the custom template. All the functions listed in the expression builder and the placeholders created in business language can be for creating expressions." to "The action to be performed by the custom template. All the functions listed in the expression builder and the placeholders created in business language can be used for creating expressions." 
ISSUE      112375 Decision Table row headers do not expand to show full row number • The Decision Table row headers now properly expand to display the full row number.
ISSUE      112404 Side-by-Side upgrade does not include irX components  • irX components (irX® for Microsoft Dynamics®  CRM, irX®  for JavaScript) will now be properly upgraded via Side by Side installation upgrade.
ISSUE      112435 In the Sample Explorer in irAuthor, both the "Call a REST service" and "Call a web service" show the same "RESTImplementation" sample • The "Call a web service" sample has been updated to point to the correct sample for calling SOAP web services.
ISSUE      112503 InRule for JavaScript - Runtime error in Copy Collection action • This bug was unrelated to the Copy Collection action. It was an issue with tracking the context within aggregate functions. It would manifest itself when sibling aggregate functions existed in a Rule Set and the later one(s) referenced the Current() function. This has been resolved by allowing Current() to resolve when it is consumed in an aggregate function/action after another aggregate function/action has already executed in the same Rule Set.
ISSUE      112504 Activation Utility and Installer - Activation and Deactivation Connection error screen issues • The Activation Connection Error and Deactivation Connection Error screens in both the Installer and Activation Utility have been updated to:
Remove the "Show Details" section which was negatively impacting the width of the dialog
Add the connection URL to help clients adjust firewall settings if needed
The Installer's Activation Connection Error "Activate Offline" button now properly transitions into the offline activation screen.
The Installer's Deactivation Connection Error "Cancel" button now properly returns the user to the Deactivation screen rather than proceeding with the uninstall process.
ISSUE      112515 GetIndex() documentation is incomplete • The Function Help for GetIndex() now properly explains that it does not function for Entity collections if Parent Context is not checked. The function description has been updated to better explain what the function does and in what contexts it can be used, including an example.
ISSUE      112563 A missing constraint value yields an error message that does not direct authors to a Constraints problem • When a constraint does not validate, the error message will be more clear that it's a constraint error and double clicking the error will bring the user to the "Entity rules" page of the Rule Application where the constraints are defined.
ISSUE      112589 irX for Microsoft Dynamics CRM - External Schema source and blue triangle icon does not exist for Virtual Lookup entities and fields • Any entities or fields sourced from Microsoft Dynamics will now properly display the associated external schema source and blue triangle icon.
ISSUE      112594 irX for Microsoft Dynamics CRM - Schema Source tooltip getting cutoff • If the full title for the schema source tooltip cannot fit in the display area provided, an ellipses is displayed to indicate additional information exists.
ISSUE      112598 Starting irAuthor via the command line from a directory outside the install directory results in not finding Activation Utility  • The Activation Utility is now properly launched even when irAuthor was executed from the command line outside of the InRule install directory.
ISSUE      112619 InRule for Microsoft Azure - Cloud Service Packages not finding InRule license file • On startup, both the irCatalog and irServer - Rule Execution Service Cloud Service Packages now properly copy the InRule License file from BLOB storage into to the executing directory in Azure.
ISSUE      112638 Installer assumes an .NET 4 app pool exists and crashes if not found • The installer configuration screen pick lists for Application Pool on the irCatalog Manager Website, irCatalog Service and irServer Rule Execution Service screens will not display any options if there are no .NET 4 app pools available. In this case, an error icon will be visible along with a tooltip indicating that there are no .NET 4 app pools. The "Next" button will be disabled and the install will not proceed until a .NET 4 app pool is defined and selected. In the case of an error, the corresponding configuration screen will display even on an Express install.
ISSUE      112654 irServer Rule Execution Service REST endpoint allows both file and catalog based Rule Applications to be specified in a single request • When a rule execution service request is made with both a file based and catalog based Rule Application defined, instead of silently defaulting to the file based Rule Application, it will now return an error saying that it is ambiguous to specify both in a single request.
ISSUE      112657 irSDK Help - InRule Product Architecture diagram still refers to irSOA rather than irServer Rule Execution Service • The irSDK Help > Application Integration with InRule > InRule Product Architecture diagram has been updated to reflect the name change from irSOA to irServer Rule Execution Service.
ISSUE      112687 InRule for JavaScript - irDistribution - Internal Error when packaging a Rule Application  This was an issue with any errors that are not caught by the irAuthor validation process.
With this fix, true internal errors will be thrown as a NotSupportedException, which will continue to display as 'Internal Error'. However, errors that are syntax related will be thrown as a RenderingException, which will display the detailed error information.
ISSUE      112728 irAuthor - Failed to extend build block error when value list cannot be loaded due to Database Endpoint connection error • The error message for when a value list cannot be loaded due to a Database connection error has been updated to better explain the source of the error.
ISSUE      112729 Developer Extension throws exception when Property Grid is selected • An exception will no longer be thrown when the Property Grid is clicked with nothing selected.
ISSUE      112740 InRule for Microsoft Azure - Create Database page connection string field cannot be copied • The connection string on the InRule for Microsoft Azure Create Database page can now be copied to the clipboard. This enables the connection string to be easily pasted into the associated cloud service configuration setting.
ISSUE      112746 Send Mail Action requires "From Name", however documentation and tooltip Info icon say it is optional • The incorrect tooltip for the Send Mail action's "From Name" field has been removed and the irAuthor help file has been updated accordingly.
ISSUE      112771 Notification Fired assertion for entity rule sets throws error 'Rule values are not available' if there were no notifications fired • This error will no longer occur and the rule values will be available for the assertion test regardless of the notification fired status.
ISSUE      112774 Test Suites with Independent Rule Sets cannot be saved or loaded • Test Suites containing Independent Rule Sets can now be properly saved and loaded into the Regression Tester.
ISSUE      112827 Name resolution fails when accessing a variable (or Rule Set parameter) via a Rule Set prefix • When referring to a Declare Variable or Rule Set Parameter with the fully qualified name (e.g. RuleSet1.Variable), a compile error was being thrown that it could not resolve the name. Prior to the fix for 111949, this error only occurred when the fully qualified path was used within an aggregate for an entity collection where parent context was unchecked. However, the fix for 111949 caused this compile error even if the collection was a complex collection or an entity collection with parent context checked. This error has been resolved so that the name can be resolved using the fully qualified path, regardless of the configuration.
ISSUE      112837 Entities panel tooltips for load, save and view entity state incorrectly reference XML • These tooltips have been updated to remove the "XML" specific verbiage as now both XML and JSON data types are supported.
ISSUE      112960 OverrideXmlDocument() method throws exception and documentation is incorrect • An inline XML document can now be overridden using the SDK code without error. The irSDK documentation has also been updated to reflect the expected syntax.
ISSUE      112961 irAuthor content control is blank after doing a Save As to the catalog where original Rule Application name already existed • The content control now properly refreshes after performing a Save As to the catalog.
ISSUE      112972 Activation connection error displayed for activation when local file contains product component it doesn't understand • The license activation error handling in the Installer and Activation Utility has been updated to ensure that true connection errors are separated from other errors. When a non-validation and non-connection error is encountered, the full exception will be displayed in a "Show details" section of the error dialog.
ISSUE      113003 Save As does not preserve case of the file name • When opening a Rule Application file by double clicking on it and then doing a Save As, the file name case was not being preserved and was being changed to lower case. This has been resolved so that the case of the file name is always preserved.
ISSUE      113033 Unhandled Exception when clicking the ellipses for the expression of the Inputs in the Execute REST Service Vocabulary template • The expression editor now properly displays when clicking the ellipses for the Inputs expression of the Execute REST Service Vocabulary template.
ISSUE      113034 Assign Return To of the Vocab template Execute REST Service Template does not save in BL • The “Assign Return To” field is now a field picker dialog rather than an expression text box. This is consistent with other Assign Return To fields for other Vocabulary templates.
ISSUE      113060 Difference Report incorrectly shows that the From Entity Field Name changed on the Add Collection Member Action • The Difference Report has been corrected to show only legitimate changes in the From Entity Field Name for Add Collection Member Actions.
ISSUE      113146 Text is truncated in the trace event detail window • A horizontal scrollbar has been added to right hand side of expression values (if the text exceeds the available space).
The non-functional "Wrap text" checkbox has been removed from the title bar.
The title bar has been updated to provide a fixed width for the DisplayName and if the context exceeds the space, an ellipses will be displayed. This was done to ensure that the Trace Event Type and Context columns are always visible.
ISSUE      113156 irX for Microsoft Dynamics CRM - error on entity selection screen if field with "Customer" data type exists in Dynamics • The meta data download was failing with an error "Found an integer attribute with unrecognized format" if a field was present in Dynamics that used the new "Customer" data type. The error is occurring in Dynamics, not in InRule, but was resolved by updating the request parameter RetrieveAsIfPublished = false.
ISSUE      113174 InRule for JavaScript - Notifications and Validations are not being reset before second and subsequent ApplyRules on an existing RuleSession Notifications and Validations are now being properly reset before subsequent ApplyRules on an existing RuleSession.
ISSUE      113179 Error with Map Data for xml data with both primitive fields and a child collection • When mapping a collection, it was passing the outer XML node, instead of the collection XML node.
This issue has been resolved and data with this XML structure now properly maps.
ISSUE      113204 irSDK Help File - Incorrect URLs for irServer - Rule Execution Service REST Methods  • The irSDK Help > Application Integration with InRule > irServer - Rule Execution Service > Accessing via REST > Methods topics were updated to ensure that the example URL displayed shows "InRuleRuleEngineService" rather than "RuntimeService" as that is the default used by the installer.
ISSUE      113226 Declared variable not appearing in else expression editor • Declared variables now properly appear in both the If true action and the else expression editor.
ISSUE      113260 Error importing a schema from an existing Rule Application containing Fields with Parent Context checked • Importing a schema from an existing Rule Application containing Fields with Parent Context checked created a validation error in the new Rule Application and left it in an un-savable state. This has been corrected by ensuring that Entity definitions are re-guided so that parent context references are propagated correctly for each.
ISSUE      113316 Map Data Action to load data does not properly trigger auto-sequential rules • The Map Data Action now properly triggers auto sequential and optimized rules to fire inline if they are associated to entities that were generated or updated by the action.
ISSUE      113382 InRule for JavaScript - String to Decimal implicit casting may produce unexpected result when executing in Chrome browser / V8 A date string that might look like a date, but isn't should throw an error when attempting to cast to decimal. This was not throwing an error in Chrome / V8 and instead returning a number often equal to Jan 1st 2000. This fix ensures that an error is thrown if the date is not valid.
ISSUE      113421 irX for Microsoft Dynamics CRM – irAuthor config binding redirects have incorrect path to assemblies • The path for the binding redirects in the irAuthor config for XRM assemblies has been corrected to point to the irAuthor\Extensions\irX for Microsoft Dynamics CRM sub directory.
ISSUE      113426 irWord and irStudio - licensing issues when valid license does not exist • If the irWord or irStudio licensing check failed, the error dialog was not displaying properly due to an error finding the directory for the Activation Utility. This has been corrected so that even if the Activation Utility cannot be found, the error dialog will display.
ISSUE      113427 irVerify is incorrectly changing constant strings when regional settings are altered • For certain regional settings (e.g. for decimal symbol of ","), irVerify was altering constant strings containing dashes in an attempt to interpret the strings as mathematical formulas. 
NOTE:  This error has been fixed for going forward, but existing .testsuite or .testresult files that have the corrupted expressions cannot be repaired.
ISSUE      113435 irAuthor - Columns improperly displayed in the decision table editor because of decimal symbol difference • To prevent this issue when the regional settings change the decimal symbol, the widths of the Decision Table columns will now be stored in a culture invariant manner.
ISSUE      113437 InRule for Microsoft Azure - Internal 500 error on first request to the runtime service after stop / restart • This issue has been corrected. After stopping and restarting the runtime or catalog cloud service, there is no 500 error on the first request and the latest endpoint assemblies and license file available in BLOB storage are used in the request.
ISSUE      113440 irVerify collapses current Entity if 10-key '-' is used while entering data • The "-" symbol on the 10 key section of the keyboard will no longer cause the irVerify section to collapse.
ISSUE      113465 Right-click of Inline table column header with underscores causes crash during editing • irAuthor will no longer crash on right-click of an inline table column header with an underscore.
ISSUE      113793 Installer does not update database name for all irCatalog database scripts • The installer now updates all scripts (create, upgrade, and utility) no matter what function is it performing.
On a new install (including a Side by Side), the installer uses the Database name (SQL server) or Schema name (Oracle) entered on the database configuration screen and replaces all scripts with that name.
On an upgrade, the installer uses the configured database name in the irCatalog Service and updates all of the scripts with that name.
ISSUE      113824 irAuthor Help - Add Collection Member incorrectly shows entity copy mode options enabled • The Add Collection Member screenshot in the irAuthor Help file has been updated to properly show the entity copy modes as disabled when the "New" entity option is selected.
ISSUE      113855 irVerify crash when setting default value of Entity without quotes • irVerify will no longer crash if there is an error with the format of the default value. A proper error message now displays indicating the reason for the failure.
ISSUE      113861 Difference Report error comparing tables with more than 32 columns • This has been corrected and the Difference Report will now properly generate a report comparing an unlimited number of Inline table columns.
ISSUE      113920 irX for Microsoft Dynamics CRM / irX for the Salesforce Platform - Type ahead filter for fields and children is not working • The "Filter Fields and Children" on the Entity and Field selection screen was not hiding Entities, even if the applied filter criteria wasn't met for any of that Entitiy's Fields or Children. This fix now hides Entities where no Fields or Children meet the entered search criteria.
ISSUE      114097 Search when inserting a Shared Rule Sets takes 15 minutes on large catalog • The search time has been greatly reduced when a "Name" filter is applied, or if no filter is applied. There are still performance issues when Comments, Attributes or Advanced filters are applied. A progress dialog has been added to provide feedback that the search is executing. These performance improvements apply to all insert shared element search screens.
ISSUE      114113 irX for Microsoft Dynamics CRM / irX for the Salesforce Platform - Updating Rule Application after receiving "Summary of Changes" report on metadata refresh results in blank irAuthor screen • After updating the Rule Application metadata from Microsoft Dynamics or Salesforce, the irAuthor content control screen is now properly displayed.
ISSUE      114119 Loading object-bound state via either Entity XML or TestScenario can cause a StackOverflowException if the dependant Assembly hasn't previously been loaded into the AppDomain • This has been corrected to ensure there is no stack overflow in this scenario.
ISSUE      114126 Execute Rule Set and Execute Member Rule Set Vocabulary Templates have Add and Delete buttons for Rule Set Parameters that don't work • The Execute Rule Set and Execute Member Rule Set Vocabulary Templates provide a Rule Set Parameters grid, but the parameters are defined on the Rule Set itself. Therefore, the inactive Add and Delete buttons on the Vocabulary Templates have been removed.
ISSUE      114129 InRule for JavaScript - irVerify works as expected, but running same rules in InRule for JavaScript does not work as expected If/Then rules that contained Execute Rule Set / Execute Member Rule Set / While Rule / async Execute JavaScript Function prevented sibling rules from firing if their condition resolved to false. This has been corrected to ensure sibling rules fire properly in these cases.
ISSUE      114179 After doing a full compile of a Rule Application, there is still some function compilation based on Performance Statistics Report • If a full pre-compile is done prior to execution, there will be no function compile time present in the Performance Statistics Report.
ISSUE      114234 Send Mail Action's "Subject" text box is longer than all others on the screen • The Send Mail Action's "Subject" text box length has been shorted to correctly align with the other fields on the screen.
ISSUE      114278 Update Installer prerequisite check verbiage for "Customized File Access" • The verbiage for this installer prerequisite check has been updated to be more clear. It will now show "Config Files Shadow Location Access - The installer copies configuration files to a temporary location in order to restore them after an upgrade. It requires access to that temporary location." In the case of a failure, the specific paths that were not accessible will be listed.
ISSUE      114292 "Total execution time" is incorrect in Summary pane in irVerify • The "Total execution time" in irVerify's Summary pane was incorrect when execution took longer than 1 minute. The issue was caused by a string format that was incorrectly dropping the minute component. This issue has been corrected.
ISSUE      114421 irAuthor crashes with a stack overflow when trying to author an Add Collection Member action • This was happening in specific scenarios where the target collection was referenced via an Entity variable or Rule Set Parameter and Entities were related via Fields with parent context checked. This issue has been corrected and stack overflow no longer occurs. The Add Collection Member action screen now correctly renders without error.
ISSUE      114457 Non Salesforce Entities are not removed from the Salesforce Schema Definition when deleted • Deleting a non-Salesforce Entity from a Rule Application will now properly remove the reference to that Entity from the underlying Salesforce Schema Definition.
ISSUE      114470 TableLookup function is throwing an error when looking up data that has a single quote in it • Performing a TableLookup on data with an apostrophe now correctly finds the record, without error.
ISSUE      114550 irAuthor Help - Vocabulary template topics say "RuleSet" rather than "Rule Set" • The irAuthor Help Vocabulary topic titles have been corrected to say "Rule Set" rather than "RuleSet".
ISSUE      114602 irCatalog Manager Website - Hover on comment & label icon doesn't work on the user page • The User page's Recent Activity section now properly displays the Labels and Comments when hovering over the associated icons.
ISSUE      114615 irAuthor Help - There is no information about overriding irCatalog permissions • A new section called "Overriding irCatalog Permissions" has been added to irAuthor help under irCatalog for Rule Management > Security Administration > Security Permissions.
ISSUE      114637 irAuthor Help - Add Collection Member topic needs updating for validation re: existing entity and initial field values • The irAuthor Help topic for the Add Collection Member topic has been updated to clarify the validation that occurs on initial values vs. Existing Entity. This validation only occurs if initial values have been defined and Existing Entity has been selected with the "By Reference" copy mode option.
ISSUE      114642 irCatalog Manager Website Application Name gets suffix appended multiple times when navigating backwards in Installer • Navigating backwards in the Installer in a side by side install will no longer incorrectly append the suffix for the irCatalog Manager Website Application Name.
ISSUE      114648 Vocabulary Template placeholders do not work with query value lists if multiple values are allowed • Query Value List placeholders with multiple values defined will now work properly when defining a Business Language rule that references the template.
ISSUE      114659 PMT function results in DivideByZero runtime error if rate argument is zero • Now, if the if Rate is 0, the Payment Amount will be the Present Value / Total Periods. 
ISSUE      114702 Inserting Shared Rule Flow throws exception • This error was occurring because the prompt for the context in which to insert the Rule Flow was not being presented. This has been resolved and the error will no longer occur.
ISSUE      114772 Silent install does not work with v5.0.16 • The silent install (CMD line) now works properly without error.
ISSUE      37581 Difference Report does not show UDF changes if revision spans a UDF insert • UDF Inserts will now properly display on the Difference Report.
ISSUE      37583 Difference Report incorrectly reports insert of Vocabulary Template as Entity modification • Vocabulary Template inserts will now properly display on the Difference Report, showing that a template was inserted, NOT that an entity was modified.
ISSUE      80957 Add Collection Member Vocabulary template editor does not contain option to link to existing entity • The Add Collection Member Vocabulary Template now has the Entity Collection Options to select from New or Existing entity, along with the copy mode options.
ISSUE      87900 irCatalog timeout error verbiage typo • The timeout verbiage has been changed from "Note that a client timeout does necessarily indicate that a server side operation did not complete." to "Note that a client timeout does not necessarily indicate that a server side operation did not complete."
ISSUE      87927 Conditions in a decision table that are linked to a field with a value list do not get refreshed when the value list changes • A refresh button has been added to the condition editor so that the condition values can be refreshed with the latest associated values.
ISSUE      88539 Database Schema Entity filters do not work • The Entities Filter on the Database Schema control will now properly search against the schema's "Entity name" column.
ISSUE      89427 Attempting to "Unshare" a Data Element from a Catalog is throwing an InvalidOperationExeception even though everything is checked-out
When unsharing a data element, if any items other than the Rule Application are checked out, including new items added, the user will be informed that they must first check in any outstanding items and only have the Rule Application checked out in order to perform the unshare.
NOTE: This does not include items that were removed from the Rule Application or modifications to items that don't impact rules, such as Rule Set folders.
ISSUE      93821 Attempting to print irVerify view windows fail with threading exception • This print option has been removed from irVerify. The data can be copied to the clipboard and pasted into another application for printing. In addition, the data can be saved to file and then opened via another application for printing.
ISSUE      94627 Rule / Action names truncated when longer than 20 characters in Rule Application Report • Rule / Action names are still truncated at 20 characters, however, the full name will now be displayed in the tooltip when hovering over the name.
ISSUE      94991 Vocabulary Report does not display Classifications • The Vocabulary Report will now display Classifications.
ISSUE      95886 Cannot open a catalog Rule Application from the catalog search window • Clicking "Open" from catalog search window now successfully opens the selected Rule Application.
ISSUE      98816 Update catalog error message that currently says "Checkout the rule application to perform this operation; schema checkout is required, as well" • This error message has been updated to list the required components for checkout based on the scenario.
ISSUE      SEAL-117 irAuthor Help updates for irAuthor command line arguments • irAuthor Help has been updated to list the correct irAuthor command line arguments.
ISSUE      SEAL-122 Clicking on expression editor causes irAuthor hang • This was an out of memory exception occurring due to the loading of the fields list in the expression editor. This algorithm has been refactored and performance greatly improved, eliminating this exception. In addition, the field list will now collect and display elements breadth-first instead of depth-first, showing the more relevant selections at the top of the list. The list will now be capped at 100,000 items rather than 1,000.
ISSUE      SEAL-123 Check in and Check out buttons are not refreshed when new user logs in • The buttons on the irAuthor "Catalog" tab were not properly being refreshed when a user logged out of the catalog. To resolve this, the user is now prompted to close the Rule Application when logging out. When a new Rule Application is loaded, the state of the Catalog buttons will be properly set.
ISSUE      SEAL-124 Dragging entity in the tree to change order throws exception • This error was being thrown in scenarios where the entity being moved contained more than 25 fields. This issue has been corrected and moving entities in the tree will no longer error.
ISSUE      SEAL-176 Adding AD-based catalog user belonging to group with no sAMAccountName attribute breaks irCatalog • irCatalog would no longer function if an Active Directory user was added to the catalog that was a member of an Active Directory group that did not have an associated sAMAccountName attribute. This issue has been resolved and now AD users belonging to groups without the sAMAccountName attribute can be added to irCatalog without error.
ISSUE      SEAL-187 Unsaved data lost when moving an item as a user with Insert permissions but not Remove permissions • Performing a move as a user with insert permissions but not remove permissions created a scenario where the insert was successful but the remove was not. This left a duplicate rule element within the same parent and caused the Rule Application to be corrupted.
To correct this, moves of entities or fields within the same parent will no longer require insert and remove permissions. In addition, moves that could alter behavior (such as moving rules) will continue to require these permissions, but the check for both permissions will occur before the move is performed and therefore will prevent data corruption and potential for data loss.
ISSUE      SEAL-189 irVerify throws error when trying to use irCatalog Rule Application on CMD line • The irVerify CMD line parameters have been updated to support irCatalog Rule Applications in addition to file based Rule Applications. The irSDK and irAuthor Help documentation has been updated.
ISSUE      SEAL-191 irAuthor Help - Incorrect information regarding ModifyDefSchemas permission • The irAuthor Help documentation has been updated to communicate the correct required permissions for check out. The OpenDefs, ModifyDefs *and* ModifyDefSchemas permissions are currently required in order to checkout.
ISSUE      SEAL-213 InRule for JavaScript - Default values are not properly set • Default values were not properly set when passing a bound object. This has been corrected and now default values will be assigned properly when passing a bound object.
ISSUE      SEAL-229 irCatalog Manager Website - Display better error message for when timeout occurs • When a timeout occurs in the irCatalog Manager Website, a specific timeout error page will be displayed. The timeout setting can be updated directly from this page.
ISSUE      SEAL-244 Recent list does not work correctly when multiple connections are defined for same irCatalog URI • When an irCatalog Rule Application is opened from the Recent list, it will present all of the irCatalog connection options matching the URI of the Rule Application.
ISSUE      SEAL-247 irCatalog Manager Website - Catalog page takes several minutes to load with large database in SQL Azure • The “Recent Activity” section has been removed from the Overview page. This was causing the majority of the performance problem in loading the Overview page for large catalogs. In addition, labels and comments on Rule Applications are not displayed on the Rule Application section of the Overview page. That information is still available from the Rule Applications menu or the specific Rule Application page.
ISSUE      SEAL-248 Cache key for REST requests does not use the full URI in the key • The impact of this issue was that if 2 Execute Rest Service Actions used Rest Operations that only differed by the relative URI, the second request received the first requests cached data.
This has been corrected by adding the relative URI to the cache key.
ISSUE      SEAL-249 Inconsistent field picker lists for Execute SQL Query and Execute method action and associated Vocabulary Templates • The Assign Return To field picker will now list the same entries for the Execute SQL Query and Execute Method actions and associated Vocabulary Templates. Specifically, Complex Fields and Collections will now be listed as entries in the Vocabulary Templates' Assign Return To selection list.
ISSUE      SEAL-251 Some disabled rule constructs don't show as gray in the Rule Application Report

• The following rule constructs are now properly grayed out in the Rule Application Report when disabled:

If Then Else keywords

The tables within an Add Collection Member action

The tables within a decision table

ISSUE      SEAL-252 Exception results when non logged-in user begins check out and then cancels • If the user clicks Close instead of selecting an irCatalog connection, check out is no longer performed.
ISSUE      SEAL-260 Installer Pre-Requisite test for "irCatalog IIS Application Pool Version" is incorrectly running for irCatalog Manager Website • The irCatalog IIS App Pool Version test will no longer incorrectly run for the irCatalog Manager Website component.
ISSUE      SEAL-272 Safe function may throw error due to erroneous implicit casting • This error was that the engine attempted to cast the result of the default value if the safe expression failed. If the cast failed, a runtime error occurred. With this fix, there is no casting on the result of the default value.
ISSUE      SEAL-273 Difference Report throws exception that is dependent on load order of files • The difference report matches on GUIDs, and if XML fragments are copied in the same Rule Application, then GUIDs get duplicated when they should not. In this scenario, comparing the same Rule Application with itself produces random reports due to multi-threading, because elements with the same GUIDs match in a non-deterministic order, and therefore may compare 2 elements that have the same GUID, but do not have the same content.
The NullReferenceException occurs in this specific scenario because a child rule element of a Language Rule has the same GUID in the each Rule Application, however the parent Language Rules have different GUIDs.
This is unexpected behavior for the difference report logic.
There are 2 parts to the solution for this defect:
We will stop breaking up Language Rules into their rule element components
We will detect duplicate GUIDs within the same Rule Application and will not run the report
ISSUE      SEAL-274 Changing the log level fails to take effect when accessing the Rule Engine via IIS • This problem occurred due to the Web.config file being incorrectly opened via code in Read/Write mode and would subsequently fail if the USERS group for the Web.config file did not have write permissions. This issue has been resolved and write permissions are no longer required.
ISSUE      SEAL-279 Closure of unsaved Rule Application does not complete when Check In dialog is presented • When you have unsaved changes for an open irCatalog Rule Application, performing any action that will close that Rule Application will now successfully close the Rule Application after changes are saved and continue with the original desired action. For Example, when an open Rule Application has unsaved changes and you do one of the following: File > New, File > Open, File > Close or Logout, you will first be prompted to save your changes and then the original action will be continued.
ISSUE      SEAL-280 Closure of unsaved new Rule Application does not complete when Save Rule Application dialog is presented • When you have unsaved changes for an open Rule Application, performing any action that will close that Rule Application will now successfully close the Rule Application after changes are saved to a file and continue with the original desired action. For Example, when an open Rule Application has unsaved changes and you do one of the following: File > New, File > Open or File > Close, you will first be prompted to save your changes and then the original action will be continued.
ISSUE      SEAL-281 Cancelling the save dialog presented after "Log Out" is incorrectly continuing with log out • Clicking "Log Out" when a Rule Application with unsaved changes is currently open will prompt for changes to be saved. If Cancel is selected on the save dialog, the user will remain logged in, and the Rule Application will remain open and unchanged.
ISSUE      SEAL-281 Cancelling the save dialog presented after "Log Out" is incorrectly continuing with log out

• Clicking "Log Out" when a Rule Application with unsaved changes is currently open will prompt for changes to be saved. If Cancel is selected on the save dialog, the user will remain logged in, and the Rule Application will remain open and unchanged.
ISSUE      SEAL-297 irVerify Regression Tester prompts for save even when no unsaved changes exist • The Regression Tester will no longer prompt to save the Test Suite if there are no unsaved changes.
ISSUE      SEAL-298 Inline Value List's Import button is enabled even when checked in • The Import button for Inline Value Lists will now be properly disabled when checked in.
ISSUE      SEAL-299 Inconsistent graying of disabled rules in Rule Application Report

• All rules within a disabled rule set will now be properly displayed in gray on the Rule Application Report.
ISSUE      SEAL-30 Fix installer's WCF HTTP Activation prerequisite checks for the irCatalog and irServer Rule Execution Services • The installer will now properly check to ensure that the WCF HTTP Activation feature is enabled when installing the irCatalog Service or irServer Rule Execution Service components.
ISSUE      SEAL-300 Edit of name for not checked-out Rule Application leads to contradictory saved state messages

• The Rule Application Name can no longer be edited when the Rule Application is not checked out.
ISSUE      SEAL-301 Attempting to check out Schema but not Rule Application is confusing

• To resolve this confusion, when the Schema is selected for checkout, the Rule Application is disabled and selected since it is a requirement that if the Schema is checked out, the Rule Application must also be checked out.
ISSUE      SEAL-302 Equality function can mask runtime errors if one operand is a string data type • This has been resolved and runtime errors will no longer be masked when an equality function is executed with one operand as a string. For example, before this fix `(4/0) = "hello"` would return `false` and (4/0) <> "hello" would return `true` but `(4/0) < "hello"` would raise a runtime error. Now all of these functions will produce a runtime error.
ISSUE      SEAL-304 "Settings" field name column not populated with child entity fields in Execute SQL Query action Vocabulary Template • The Settings field picker will now list the same entries for the Execute SQL Query and Execute Method actions and associated Vocabulary Templates. Specifically, if a child entity is selected in the Assign Return To field, that entity's fields will be available for selection in the Settings dialog within the Vocabulary Template.
ISSUE      SEAL-311 Divide function redundantly evaluates the numerator expression twice

• The Divide function no longer evaluates the numerator twice.
ISSUE      SEAL-312 Installer fails .NET pre-requisite check for systems with .NET 4.7 • This issue has been resolved and the pre-requisite check for irX for Microsoft Dynamics CRM ensuring that there is a minimum version of .NET 4.5.2 will no longer incorrectly fail when the .NET version is 4.7.
ISSUE      SEAL-315 Incorrect handling of literal date and datetime values when culture set to non en-US culture format • There were 2 main issues in this defect:
Issue #1: Literal date and datetime values authored with a culture setting where the number and list separators match en-US but the date format does not (see NOTE below for highlighted affected cultures), were incorrectly validated and displayed using the en-US date format.
Issue #2: For other non en-US cultures, the validation and display correctly used the current culture format, unless the entered date was not valid in the current culture. If the value was invalid in the current culture, but valid in en-US, it validated without error and persisted it as the value in en-US. 
ISSUE      SEAL-315 (continued from above) • Issue #1: For cultures where the number and list separators match en-US but the date format does not, syntax rules with date or datetime literals incorrectly assumed that the current authoring date format was MM/dd/yyyy (matching en-US) for validation and display in irAuthor. Therefore, when a date was entered in the user's intended current culture (e.g. dd/MM/yyyy), as long as the day portion of the date was not greater than 12, it would successfully validate. It continued to display in irAuthor as it was entered, not alerting the user to any problem. In this case, it would evaluate at runtime incorrectly as well. If the day portion was greater than 12, the entered date would cause the Rule Application to fail validation since it was incorrectly being considered as MM/dd/yyyy. 
This issue impacted Business Language rules as well, but was surfaced in a different way. When initially entering the literal date or datetime value into BL, it perceived it using the correct current culture. However, after the user navigated off of the BL rule, (allowing that rule to be converted into the underlying syntax format), the date would have been validated using the incorrect en-US date format. Therefore, if this was not a valid date in en-US, the date value would display in red. If the date was valid in both en-US and the current culture, the date would continue to display as entered in BL without error.
ISSUE      SEAL-315 (continued from above) • This issue has been resolved to ensure that the correct current culture date format is used for display and validation in irAuthor. In addition, going forward, date and datetime literals will be persisted in the Rule Application file or irCatalog database in the true culture invariant format of ISO 8601. This will not prevent Rule Application files from being opened and run in previous versions.
NOTE: Clients who have rule authors using one of these impacted culture formats (cultures which share the en-US number and list separator but not the date format) should review the use of literal date and datetime values in all Rule Applications to ensure that the correct values are being applied. There are 145 affected cultures, including en-AU English Australia, en-GB English United Kingdom, en-HK English Hong Kong, en-IE English Ireland, en-IL English Israel, en-IN English India, es-MX Spanish Mexico and zh-Hant Chinese Traditional. When opening a Rule Application that uses date or datetime literals in this new version, these literal values will use the correct current culture format for display. This should make any errors in the date values apparent. For example, if a date value of #04/03/2017# was entered in a previous version with the en-GB culture, this was intended to be March 4th, 2017. In older versions, this date displayed to the author as entered #04/03/2017# and was persisted into the Rule Application and processed at runtime as April 3rd, 2017. When opening this Rule Application in the corrected v5.0.22 version on a machine with the en-GB culture setting, the date will display as #03/04/2017#, indicating to the user that the incorrect date was being used. No conversion of existing data will occur during upgrade to this version. We strongly recommend a detailed review of literal date and datetime values in use.
ISSUE      SEAL-315  (continued from above) • Issue #2: For non en-US cultures that do not share the same number and list separators as en-US, the date and datetime literals were displayed and validated using the correct current culture. However, if the date did not validate in the current culture, it then checked to see if it was valid in en-US and if so, validated without error and persisted it as that date in en-US. In these cases, it would sometimes immediately swap the display of the month and day on the UI after losing focus, or, would do so when the UI was refreshed (e.g. after saving to irCatalog or re-opening a file-based Rule Application). For example, if you created a rule for fr-FR culture with a date #12/31/2017#, that date is not a valid French date, but it is valid in en-US. It would validate correctly and upon refreshing the UI, it would display as #31/12/2017#. This would process at runtime as December 31st, 2017.
This behavior will change in this release. Going forward, if the entered date or datetime value is not a valid date in the current culture, the value will be flagged as an invalid date and will not compile.
ISSUE      SEAL-331 Data loss when cancelling check-in of unsaved irCatalog Rule Application

• This issue occurred when the Rule Application was set to be closed (due to Logout, File > New, etc), but the user was first prompted to save unsaved changes. When cancelling on the check-in dialog, the Rule Application was being closed anyway, and unsaved changes lost.

With this fix, after cancelling the check-in, the Rule Application now stays open, everything unchanged, and in a logged in state.
ISSUE      SEAL-342 irCatalog Manager Website  - Remove underscores from schema in success message • The success message for undoing the schema checkout has been updated to remove the superfluous underscores.
ISSUE      SEAL-351 irDistribution packaging error for Rule Application with Execute JS function with blank Assign Return To field

• The Execute JavaScript Function will now package properly even if the Assign Return To field is not populated.
ISSUE      SEAL-354 NumDigits, NumFracDigits, and NumIntDigits should throw error when given a string parameter

• When a parameter of the NumDigits, NumFracDigits or NumIntDigits functions receive a string that cannot be case to a number, an error will now be thrown.
ISSUE      SEAL-355 NumDigits function incorrectly not counting significant zeros

• .0123 was incorrectly returning an answer of 3, rather than the expected 4. This function has been corrected to ensure it counts all *significant* zeros.
ISSUE      SEAL-356 Documentation updates for NumFracDigits precision

• The NumFracDigits function documentation has been updated to clarify the results provided based on the size and precision of the input parameter based on the .NET System.Decimal data type.
ISSUE      SEAL-357 Documentation updates for Boundaries for NumDigits

• The NumDigits function documentation has been updated to clarify the results provided based on the size and precision of the input parameter based on the .NET System.Decimal data type.
ISSUE      SEAL-358 Execute Rule Set Vocabulary Template does not pull in Rule Set parameters from parent Rule Set

• After typing in the ParentEntity.RuleSetName as the Target Rule Set in an Execute Rule Set action, the Rule Set's parameters are properly pulled in. However, that same step in the Execute Rule Set Vocabulary Template was not pulling in the Rule Set parameters. This has been corrected.
ISSUE      SEAL-359 Regression Tests in a test folder disappear when the folder is moved

• Regression Tests will no longer be lost when a test folder is moved.
ISSUE      SEAL-360 RuleCatalogConnection.GetCatalogInformation() slow when connecting to irCatalog instance that needs upgrade

• The performance of this method has been improved.
ISSUE      SEAL-366 Documentation updates for Random function

• The Random function documentation has been updated to clarify that the results are always integer values.
ISSUE      SEAL-380 irCatalog upgrade is much slower when hosted in Azure than on premise • Performance of irCatalog upgrades for large irCatalog databases hosted in SQL Azure has been improved by reducing the amount of data that is being moved between the upgrading process and the SQL database. This was accomplished by sequencing a query and removing the xml information from some query results.
ISSUE      SEAL-381 Slow-running diagnostics query causes performance issues in large catalogs • To improve the speed of the Diagnostics query that runs on checkin and checkout, a utility script has been added to the \irServer\RepositoryService\DbBuildScripts\SqlServer\UtilityScripts folder in the install directory. This script, when manually run, will create a view and an index that will provide a more efficient way for SQL to run the query in question.  NOTE: This index may not help improve performance in all irCatalog environments. The improvements vary based on the structure and contents of the specific irCatalog database. 
ISSUE      SEAL-391 irCatalog Audit log message spelling error

• Audit message now correctly reads "Performed diagnostic check on catalog and found no errors." rather than "Preformed diagnostic check on catalog and found no errors."
ISSUE      SEAL-396 When calling GetRolesForUser you can get duplicated roles when the user belongs to a group

• GetRolesForUser will no longer return duplicate roles.
ISSUE      SEAL-397 Whitespace, parentheses and function capitalization are not preserved when switching syntax expressions between cultures • Whitespace, parentheses and function capitalization will now be properly preserved for syntax expressions, regardless of the current culture.  As part of this change, the following constructors have been removed from irSDK: LiteralInteger(long), LiteralString(string), LiteralDecimal(decimal), LiteralDateTime(DateTime), LiteralDate(DateTime), LiteralBoolean(bool).
ISSUE      SEAL-401 Created/Effective version settings and override dates are not persisted in culture invariant format • The Created and Effective dates in both irAuthor Version Settings and the Override Version Settings for specific artifacts have been updated to be stored in culture invariant format. This will ensure that if run in a different culture than authored, the originally intended date will be used at runtime. 
ISSUE      SEAL-402 MSDN links in Function help documentation point to archived/inactive content • The Function Reference and irSDK Developer's Guide Help documents have been updated to remove/update outdated links.
ISSUE      SEAL-403 Business Language hanging / crashing when attempting to display a rule • Improvements have been made to increase speed and reduce memory usage when loading Business Language rules.
When unselecting Business Language templates in the Vocabulary > Modify Template Availability screen, this should improve performance and/or memory usage when loading Business Language rules as these unchecked templates are now properly excluded from the underlying Business Language Template Engine. Previously, these were simply hidden on the user interface. Functionally, there will be no change in behavior.
ISSUE      SEAL-407 Execute Web Service action cannot map to list in Output/Response • This issue was a failure to map the web service's output to the defined matching entity field(s).  Newly created Execute Web Service actions will now map correctly.  In previously created Rule Applications experiencing this error, it will be necessary to go to the End Points page, select the web service, reload the WSDL, and re-select the operations to be used.  It might also be necessary to remap the output to the correct field.
ISSUE      SEAL-420 irCatalog Manager Website - Deleting a role that is assigned to a group or user gives incorrect error message • The correct error message will now be displayed in this case to indicate that a role that is in use cannot be deleted.
ISSUE      SEAL-422 For Each and Execute REST Service context sensitive Help (F1) not working • Clicking F1 when on the For Each or Execute REST Service action now correctly navigates to the associated topic in irAuthor Help.
ISSUE      SEAL-423 Execute JavaScript Function action screen issues • The sample box has been correctly left aligned with the others on the screen.
ISSUE      SEAL-43 The Rule Application name is not displayed in the error message when trying to retrieve a Rule Application that does not exist in the catalog • This error message will now display the name of the Rule Application.
ISSUE      SEAL-434 irCatalog Manager Website - Unhandled Exception when adding label to checked out Rule Application • The Assign Label button is now disabled if the Rule Application is checked out. If the page is loaded before the Rule Application is checked out, assigning a label will display an error indicating that labels cannot be assigned to checked out Rule Applications.
ISSUE      SEAL-435 irCatalog Manager Website - Updates for inactive items • With the exception of the Recent Activity grid and the Checked In By column on the overview page, any inactive items displayed will show "(Inactive)" text after the name.
ISSUE      SEAL-436 irCatalog Manager Website - Deactivating user who has current checkouts performs undo checkout without informing user • The "are you sure" message that displays before deactivating a user will now clearly state that any checkouts for that user will be undone.
ISSUE      SEAL-438 InRule for JavaScript Help CHM file has incorrect copyright date • The InRule for JavaScript CHM Help file copyright date has been updated.
ISSUE      SEAL-440 Loading JSON Entity State to bound entities with enumerations is loading the enumeration values as integers rather than strings, causing an invalid value that does not match to the associated value list • This issue has been resolved. The JSON data can continue to have the enumeration integer value, but when importing into InRule, it will correctly load the string value for any enumerations.
ISSUE      SEAL-441 Update documentation for missing Salesforce dependencies preventing Eclipse push of APEX objects • The InRule for the Salesforce Platform Implementation Guide has been updated to include a critical manual step of creating custom fields necessary for a successful push of the APEX code into Salesforce.
ISSUE      SEAL-445 irCatalog Manager Website - Tooltip for disabled Delete button is confusing • The tooltip on the disabled "Delete" button for the first revision of a Rule Application was confusing. This has been updated to clearly state that there are no previous revisions to delete in this case, causing the button to be disabled.
ISSUE      SEAL-454 Unhandled error when unbinding shared schema that is currently checked out • This error is now handled and clearly states that you cannot unbind a shared schema when the schema is checked out.
ISSUE      SEAL-455 Non irSDK dlls with "InRule" in the name are not copied over into the Endpoint Assemblies directory • Any non-irSDK dlls, regardless of the name, will now be properly copied to the Endpoint Assemblies directory.
ISSUE      SEAL-456 Rule Sets, Vocabulary and Rule Flows are incorrectly duplicated when duplicating or performing a copy/paste on an Entity • When copying/pasting or duplicating an Entity, associated Vocabulary Templates, Rule Sets and Rule Flows will no longer be duplicated.
ISSUE      SEAL-457 irCatalog client uses hard-coded error message when WCF MaxItemsInObjectGraph is exceeded • irCatalog exceptions now state more clearly when the maximum number of rule elements has been exceeded by a rule application. It also directs the user to the documentation to change the default configuration if the maximum value is not sufficient.
ISSUE      SEAL-458 Update "Reactivate" button text in Maintain Catalog window for irAuthor • The "Reactivate" button has been updated to "Activate" to be consistent with the irCatalog Manager Website verbiage.
ISSUE      SEAL-462 Blank value in Inline Value List becomes empty when saved to irCatalog, causing error on checkout • Whitespace is now properly preserved when checking into irCatalog, preventing the error on checkout.
ISSUE      SEAL-463 "Label not assigned to def" error when valid Rule Application retrieved from irCatalog • This issue was caused by an incorrect query when getting the Rule Application definition "def" from the catalog. The query did not include the def type, only the def name and this specific error was due to the combination of the bad query and the data in this particular irCatalog database. This irCatalog database had a Rule Set in Rule Application B that was the same name as Rule Application A. To correct his problem, the query has been updated to include the def type.
ISSUE      SEAL-467 Open from Catalog error pop up doesn't force user to dismiss it before continuing • This connection error dialog has been updated to a modal window to prevent confusion.
ISSUE      SEAL-473 Complex Collection Does Not Load In Expected State for Comparison Tests • This defect was triggered when attempting to save Entity State data containing a Complex Collection with a property named “Value” in the TestScenario format. The properties are auto-created when Complex Collections are the product of a bound .NET Assembly schema. The defect has been resolved to ensure that Complex Collections are handled correctly when loading and saving Entity State, regardless of the property names.
ISSUE      SEAL-49 irAuthor > Options misspelling of "language" as "langauge" • This misspelling has been corrected.
ISSUE      SEAL-497 Rule Application Report not properly greying out disabled content • Disabled Execute REST Service actions will now properly display in grey in the Rule Application Report.
ISSUE      SEAL-501 Blank value in Inline Table becomes empty when saved to irCatalog, causing error on checkout • Whitespace is now properly preserved when checking into irCatalog, preventing the error on checkout.
ISSUE      SEAL-502 Typos in the InRule for JavaScript documentation • The InRule for JavaScript Help documentation has been updated to fix a few typos.
ISSUE      SEAL-503 NullReferenceException in irVerify when a Compare test involves a Complex Collection • This exception will no longer occur when irVerify executes a compare test that involves a Complex Collection.
ISSUE      SEAL-510 Execute SQL Query Action Vocabulary Template parameters section is missing the "Expression" column • The missing "Expression" column has been added back to the parameters grid of the Execute SQL Query Action Vocabulary Template.
ISSUE      SEAL-517 Confusing error message when add, remove, or clear is performed on collection being iterated via For Each or Execute Member Rule Set • The error message has been updated to be more clear when performing an add, remove, or clear on the collection being iterated via For Each or Execute Member Rule Set.
ISSUE      SEAL-532 JSON load behavior in irVerify inconsistent between 2 related Rule Applications • The same JSON object deserialized without issue in one Rule Application, but threw an error in the other. The Rule Applications were setup with the same schema structure. The error occurred due to Auto Rule Sets being incorrectly executed when the JSON was loaded. This has been resolved by ensuring that Auto Rule Sets are NOT executed when the JSON is deserialized.
ISSUE      SEAL-537 Multiple Copy/Pasted Business Language rule actions in a Decision Table get compiled into a singular action when Compatibility Mode is not selected, causing actions not to fire • When copying & pasting Business Language templates that require a separate designer dialog (e.g. AddCollectionMember action), their underlying rule element identity is no longer duplicated, so when used as a DecisionTable action, they will be compiled as separate actions, rather than replacing each other.
ISSUE      SEAL-545 Unable to save post execution Test Scenario • This issue occurred when a Test Scenario was attempted to be saved after a 'Halt - All rule execution" action was executed. This has been resolved to ensure the Test Scenario state is preserved in this case.
ISSUE      SEAL-548 An error should be thrown for Sort and Copy Collection when iterating over itself via For Each/Execute Member Rule Set • When Sorting or Copying to a collection currently being iterated via For Each or Execute Member Rule Set, an error will now be thrown. Prior to this fix, these scenarios did not cause a runtime error, however, it could leave the data in an unexpected state. NOTE: If Rule Applications are relying on this behavior, modifications will be required.
ISSUE      SEAL-556 “Index was outside the bounds of the array” exception when Execute SQL Query Action returns no results • In v4.5 - v4.6.8, when an Execute SQL Query Action assigned to an Entity with "Use first matching row" checked returned no results, an instance of the Entity was created, but all Entity fields were set to null. In v4.6.9, this behavior changed and set the Entity to null. Starting in v4.6.26, this scenario’s Execute SQL Query Action threw the error "Index was outside the bounds of the array". This fix removes the error thrown by the Action, however, the Entity will still be set to null, and will not be an empty Entity with null field values. Therefore, references to this null Entity in subsequent rules will need to check if the Entity is null.
ISSUE      SEAL-562 Test Scenario does not save the value in the textbox with focus • When saving a Test Scenario, all values will be saved, regardless of the focus in irVerify.
ISSUE      SEAL-580 GetElement "Unable to resolve path" error • The GetElement function was failing to retrieve the child collection ID when the parent and child had the same name. This function has been corrected to ensure that the Element Identifier path syntax uses XPath notation consistently.
ISSUE      SEAL-584 Vocabulary Report filtered inconsistently and with no indication • If an Entity was selected on the Entities pane or a Rule Set was selected on the Rules pane, only Vocabulary templates associated to that Entity were displayed in the Vocabulary Report. This filtering has been removed and all templates will display in the report regardless of the selection within irAuthor.
ISSUE      SEAL-587 Incorrect notation in GetElement should throw exception • This function supports XPath notation only and will throw the appropriate error if the dot notation is used.
ISSUE      SEAL-590 Vocabulary Templates associated with a Rule Set that is inside a Rule Set folder and Vocabulary Templates associated to Rule Flows do not display in the Vocabulary Report • Both Vocabulary Templates associated with Rule Sets that are inside of Rule Set folders and Vocabulary Templates associated to Rule Flows will now properly display in the Vocabulary Report.
ISSUE      SEAL-592 Vocabulary templates associated with most Entity substructures don't show in Vocabulary Report • Vocabulary templates in the context of a Complex or Entity Field, or a Complex or Entity Collection, were not showing in the Vocabulary Report. These templates will now appear in the Vocabulary Report under the appropriate Entity.
ISSUE      SEAL-593 irAuthor occasionally crashes on exit • irAuthor no longer crashes when exiting.
ISSUE      SEAL-597 Expression Vocabulary Template with default names leads to System.ArgumentNullException • This error was occurring due to the Function Name being null. If the Function Name is omitted, it will be given a default name, preventing this error from occurring.
ISSUE      SEAL-600 CatalogRuleApplicationReference constructor should validate irCatalog URI • Previously, a validation routine was called when the RuleSession attempted to connect to irCatalog, however if trying to create a CatalogRuleApplicationReference with a completely invalid URI string, its constructor would throw a UriFormatException. All of the URI validation logic has been moved from the Validate method into the constructor and will now also check for null/empty string and invalid URI, which was not previously included in the validation logic.
ISSUE      SEAL-601 irServer Rule Execution Service - Provide a better error message when catalogURI/username/password are not available • When the irCatalog URI, username or password is not provided in the request or in the inrule.runtime.service configuration file, a more clear error message will be displayed.
ISSUE      SEAL-604 InRule for JavaScript - Expression with nested Count functions is evaluating incorrectly • This error has been resolved to ensure the JavaScript Engine properly handles nested aggregates in a filter expression when the target collection is the same. e.g.: Count(Collection1, Count(Collection1) = Field2)
ISSUE      SEAL-605 irServer Rule Execution Service - issues with using cached credentials • Rule Applications are now cached by user credentials to ensure that invalid credentials are not able to be used to retrieve a cached Rule Application.
ISSUE      SEAL-63 Catalog SQL performance issues with large catalogs • Improved performance with irAuthor and irCatalog Manager when using a large SQL Azure catalog database. The performance gain is most noticeable in irCatalog Manager. 
Before this change, irCatalog Manager would freeze. Now, it will load the catalog and be responsive. Perceived performance in irAuthor is much less. It will no longer time out now - suggested timeout setting is 5 minutes.
ISSUE      SEAL-634 irSDK Help – cleanup broken links • The irSDK Help file has been cleaned up to fix some broken links in the "Authoring a Simple Test Suite for Regression Testing" topic.
ISSUE      SEAL-64 Rule Application Report - Description and Category information shows on the same line • The report was incorrectly showing the "Categories:" label on the same line as the Description information. There is now a line break before "Categories" to ensure that information is on a separate line.
ISSUE      SEAL-654 Classifications and Vocabulary Templates tied to Entity substructures do not show the Entity association within the Vocabulary Report • Both Classifications and Vocabulary Templates associated to Entity sub-structures will now show the associated context on the Vocabulary Report.
ISSUE      SEAL-661 Vocabulary templates for rule sets and rule flows cause error when running difference report • An invalid error was removed from the difference report which was run against a rule application containing a vocabulary template.
ISSUE      SEAL-663 Vocabulary Template edit button is enabled even when no Template is selected • On the Vocabulary view, the edit button is now properly enabled / disabled for Vocabulary Templates and Classifications based on whether an item is selected.
ISSUE      SEAL-664 EndPoint assembly integration of Salesforce Rule Helper methods fails in irVerify • The object reference error no longer occurs when executing a Salesforce Rule Helper method from irVerify. As a part of this fix, the Rule Helper has been moved out of the InRule.Salesforce.Runtime.dll and into its own assembly, "InRule.Salesforce.RuleHelper.dll". In addition, the InRule.Salesforce.Runtime.dll has been renamed to "InRule.Salesforce.Execution.dll".
ISSUE      SEAL-675 irSDK Help - InRule Runtime Service Config File Settings topic cleanup • The irSDK Help "InRule Runtime Service Config File Settings" topic has been updated to remove a duplicate sample.
ISSUE      SEAL-676 Default row selection is inconsistent for Vocabulary Templates and Classifications • When navigating to the Vocabulary view, no Vocabulary Templates or Classifications will be selected by default.
ISSUE      SEAL-677 Vocabulary Template and Classification record is unselected after edit • After editing a Vocabulary Template or Classification, that item will now be properly selected in the Vocabulary view.
ISSUE      SEAL-689 Installer 'Refresh IIS Info' button does not work • Changes to the IIS configuration will now become visible after clicking the Refresh button.
ISSUE      SEAL-70 irCatalog Manager Website - Inactive Rule Applications are incorrectly available for promotion • Inactive Rule Applications are no longer available for promotion via the irCatalog Manager Website.
ISSUE      SEAL-710 Exception detail not shown for specific Microsoft Dynamics CRM connection error • Proper error detail will now be displayed when a "ServerTooBusyException" is thrown on connection to Microsoft Dynamics CRM.
ISSUE      SEAL-711 irX for Microsoft Dynamics CRM "Select Test Data" screen's search feature does not search in numeric fields that are in the selected view, only text fields • On the irX for Microsoft Dynamics CRM "Select Test Data" screen, searching now includes numeric (integer, decimal, and double) fields as well as text fields. Numeric comparison will be "equals," not a pattern match.
ISSUE      SEAL-712 InRule for Microsoft Dynamics 365 deployment script error • An error will no longer occur when running the "Deploy-CrmPackage.ps1" script.
ISSUE      SEAL-717 InRule for Microsoft Dynamics 365 Deployment Guide updates • The Dynamics CRM Integration Framework Deployment guide has been updated to clarify and correct some steps in the deployment process.
ISSUE      SEAL-718 InRule for Microsoft Azure Install Help updates • The InRule for Microsoft Azure Installation Help documents have been updated to reflect changes to the Azure Portal for storage account access keys.
ISSUE      SEAL-719 InRule for Microsoft Dynamics 365 Quickstart updates • The InRule for Microsoft Dynamics 365 Quickstart - > Deploy CRM Components Online section "Before you begin" has been updated to correct the misspelling and name of the product. In addition, the name of the quick start readme has been updated to reflect the full product name.
ISSUE      SEAL-720 Activation Utility does not list product components for expired licenses as available to activate • Product components with expired licenses are now properly listed as available for activation in the "Activate Licenses" section of the Activation Utility.
ISSUE      SEAL-728 InRule for Microsoft Dynamics 365 - executeRules opts object setter does not honor defaults.useDirtyEntity in inrule_invokeCustomAction.js • The executeRules() method in the invokeCustomAction.js script has been modified to honor default values correctly in all cases.
ISSUE      SEAL-729 InRule for Microsoft Dynamics 365 - inrule_invokeCustomAction.js incorrectly sends option properties not expected by the REST service • An error in the executeRules() method of the invokeCustomAction.js that was incorrectly sending all options parameters into the REST service has been resolved.  Callers of this method are now able to pass in no options, some options, or all options and only parameters expected by the REST service will be sent.
ISSUE      SEAL-733 InRule for the Salesforce Platform Integration Framework - InRule.Salesforce.RuleHelper.dll shows Copyright of 2015 • The InRule.Salesforce.RuleHelper.dll now shows the correct Copyright year.
ISSUE      SEAL-734 InRule for the Salesforce Platform Integration Framework - InRule.Salesforce.Execution dll does not have a file version and has an incorrect file description • The InRule.Salesforce.Execution dll's version now matches with the main InRule version and the File Description and Product Names have been updated.
ISSUE      SEAL-736 InRule for the Salesforce Platform Integration Framework - Entity name and id are not set on the incoming object which will cause insert and delete rules to fail • Salesforce inserts and updates no longer fail when the entity name and id are not set on the incoming object.
ISSUE      SEAL-74 TableLookup against Database Endpoint fails if query includes unicode characters • InRule TableLookup functions with Unicode values in the ‘matchValue’ parameter will now successfully match Unicode characters in the referenced database table.
NOTE: Behavior change: When the TableLookup match value data type is not supported by the underlying database, the old behavior would make some assumptions about the data type and return a result. Now the rule engine will surface the error and display the underlying data type mismatch details.
ISSUE      SEAL-741 irAuthor Help misstates applicability of Difference Report • The irAuthor Help file has been updated to indicate the correct usage of the Difference Report. The Difference Report is intended for comparing different revisions of the same Rule Application.
ISSUE      SEAL-761 irX for Microsoft Dynamics CRM / Salesforce Platform - Item section in ribbon should not be enabled when rule app checked in • The ribbon for CRM items now enforces the checked-in status of a rule application.
ISSUE      SEAL-762 Import Schema From Rule Application / JSON Snippet allows modifications to not-checked-out rule app • It is now safer to review rule applications from irCatalog when they remain "check-in". Some scenarios where modifications were possible have been locked down.
ISSUE      SEAL-763 InRule for Microsoft Dynamics 365 - Fixed client-side forms incorrectly registering unsaved changes following rule execution using JS library • Corrected issue in plugin trace logging that resulted in the rule set name not being written.
ISSUE      SEAL-764 InRule for Microsoft Dynamics 365 - Custom Action from JavaScript incorrectly triggers unsaved form changes when persistchanges is true • Fixed client-side forms incorrectly registering unsaved changes following rule execution using JS library.
ISSUE      SEAL-771 Cannot Share For Each Rules in Shared Rules • Shared rule sets using irCatalog no longer fail when they contain For Each rules.
ISSUE      SEAL-779 Regression Tester - Compare test performance issues • The memory leak within irVerify's regression testing is resolved.
ISSUE      SEAL-803 Map Data XML throws null reference error, but same data with Map JSON does not • The XML Map Data action no longer throws a NullReferenceException when certain XML values are used.
ISSUE      SEAL-83 SQLQuery against Database Table fails if query includes unicode characters • InRule SQL Queries with source set to Inline/Database table and referencing a 'linked' Database Table with Unicode characters in the input parameters now successfully match Unicode characters in the referenced database table.
ISSUE      SEAL-84 irCatalog Manager Website - Assign Label and Comments fields do not display proper validation message if data entered exceeds maximum size • The assign label and comments text boxes are now limited to a max character length based on their size limitations.
ISSUE      SEAL-844 Value list imported with schema from .NET enums does not update on schema reload • Refreshing a bound .NET Assembly Schema will now properly update associated Inline Value Lists. 
ISSUE      SEAL-850 irServer Rule Execution Service via REST's UseIntegratedSecurity setting does not work in v5.0.26 or later unless username is provided • When using the irServer Rule Execution Service with the UseIntegratedSecurity setting configured, it will now correctly NOT require Username or Password in the request. If they are included in the request, they will be ignored, even if they are invalid.
ISSUE      SEAL-93 Repeated move of items in navigation tree throws exception, cannot exit irAuthor • Repeated item moves will no longer cause an exception.
ISSUE      SEAL-954 Rule Execution error - Index was outside the bounds of the array (IndexOutOfRangeException) • In an environment with a large number of threads performing rule execution, periodically an "Index was outside the bounds of the array. (IndexOutOfRangeException)" exception was thrown. After the exception occurred, all subsequent requests on that server failed with similar error messages.
This issue was caused by an internal thread safety issue in the cache and has been resolved.
ISSUE      SEAL-955 Update irCatalog documentation to provide information on promotion best practices • The irCatalog documentation now provides information on promotion best practices. Specifically, it provides warnings that circular and backwards promotions are NOT supported and can lead to catalog corruption.
ISSUE      SEAL-957 Execute REST Service Action with parameter values containing an equals sign - equals sign and characters after it are incorrectly truncated • Within the Execute REST Service Action, when encoding a URL which contains a parameter containing an equals sign, e.g. client_secret=137CB01C+0A5B+4E73=BDA3+115D0404F442, the equals sign and characters following it are no longer truncated.
ISSUE      SEAL-99 irAuthor splash screen has white corners • The irAuthor splash screen no longer shows white corners.
SCHEMA     DB-17 irCatalog database Schema Version increase to 17 The irCatalog database Schema Version increased to 17 with the addition of the email address field on the user table.
SCHEMA     RULEAPP-100 Rule Application XML FeatureVersion increase to 100 The Rule Application XML FeatureVersion increased to version 100 with the addition of the Target Platform concept in the irX for JavaScript extension and the Execute JavaScript Action.
SCHEMA     RULEAPP-101 Rule Application XML FeatureVersion increase to 101 The Rule Application XML FeatureVersion increased to version 101 with the addition of the setting to support Self-signed certificates in the REST Endpoint.
SCHEMA     RULEAPP-102 Rule Application XML FeatureVersion increase to 102 The Rule Application XML FeatureVersion increased to version 102 with the addition of Deep Copy functionality and the Decision table's "compatibility mode" setting.
SCHEMA     RULEAPP-103 Rule Application XML FeatureVersion increase to 103 The Rule Application XML FeatureVersion increased to version 103 with the addition of the Salesforce Schema type.
SCHEMA     RULEAPP-104 Rule Application XML FeatureVersion increase to 104 The Rule Application XML FeatureVersion increased to version 104 with the addition of the For Each rule construct.

Was this article helpful?

0 out of 0 found this helpful

Comments

0 comments

Article is closed for comments.