Released 2025-07-23
Bug Fixes
- Engine no longer errors when processing a statement with no timestamp while "UseStatementTimestampInRegistrationUpdates" is enabled.
- Fixes broken concurrent launch detection for SCORM courses when UseDeltaRecordResultsPayload is enabled.
- Subscription filters with empty strings can no longer be created.
- [LTI] - Resolves "invalid tenant" error when an LTI 1.3 Tool requests Engine's /token endpoint from a system-level content connector. The error only occurs in Engine environments with a deactivated "default" tenant.
- [LTI] - URL encode
contextIdwhen included as acontextproperty inltiMetadatafor LTIconnectorReferenceRequestimports to prevent context ID validation errors when the context ID contains invalid URL characters. - [LTI] - Launches should no longer attempt to incorrectly set cookies with empty path.
- [SqlServer] - Fixes "activity not found" error and "fatal error" popup when updating registrations at course runtime. Impacts databases installed with GUIDs as internal database IDs against SqlServer.
- [Upgrade] - Fixes upgrading version 0.9x TinCan content properly.
- [Upgrade] - Protects against rare "String lengths don't match" error during the xAPI documents migration.
- [Upgrade] - improved statement equivalence check to avoid duplicate statement error during upgrade.
Improvements
[NET] - Add a new configuration setting "AdditionalAssembliesToLoad" that specifies a comma separated list of additional .NET assemblies that need to be loaded to support custom software configurations.
- On relaunch of a SCORM 2004 course, attempt to recover from an inconsistent state caused by a bad exit (prevents loss of bookmarking and suspend data).
- To avoid future tenant ID collisions, a
DELETEcall to/appManagement/tenants/{tenantName}does not delete the tenant record from theEngineTenantdatabase table. Instead, the request renames the tenant using the prefix_!|DELETED!|_, which internally designates it as a deleted tenant. - When "PlayerScoLaunchType" is set to "NEW_WINDOW_AFTER_CLICK", the "Click Here to Launch Course" link is now accessible via tabbing.
- Introduces experimental "X_S3MaxConcurrency" setting to cap the maximum number of concurrent connections during a transfer with Amazon S3.
- [Java] - Updated AWS Java SDK from version 2.25.7 (released 3/11/2024) to version 2.31.37 (released 5/7/2025).
[Java] - Bumps Apache Commons FileUpload from version 1.5 to 1.6.0 to resolve CVE-2025-48976.
- [Java] - Bumps the esapi dependency from 2.5.3.1 to 2.7.0.0 for CVE-2025-5878.
Dispatch Bug Fixes
- [LTI] - More robust logging if line item creation fails.
- [LTI] - Addresses a failure to correctly read form parameters during the launch of an LTI 1.1 course when .NET Engine is the tool provider.
Dispatch Improvements
- [LTI] - Include a more detailed description of the cause of an error in the alert to the user when an LTI 1.1 tool consumer (platform) returns an error response to a basic outcomes request from the tool provider (external tool).